Hibernate中的CRUD操作
1、添加数据操作
插入数据使用session对象的save()方法完成。
插入代码:
@Test public void Test1(){ SessionFactory sessionFactory = HibernateUtils.getFactory(); Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); UserEntity user = new UserEntity(); user.setName("jack"); user.setPwd("123"); user.setScore(98.5f); session.save(user); tx.commit(); session.close(); sessionFactory.close(); }
2、根据id查询数据
根据id查询数据需要使用session对象的get()方法完成
查询代码:
@Test public void Test2(){ SessionFactory sessionFactory = HibernateUtils.getFactory(); Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); /** * get方法参数说明: * 第一个参数:数据表对于的实体类的class * 第二个参数:需要查询的id */ UserEntity userEntity =session.get(UserEntity.class, 1); System.out.println(userEntity); tx.commit(); session.close(); sessionFactory.close(); }
3、修改数据操作
修改数据要分两步完成,第一步:根据id将该数据查询出来。第二步:修改该实体的属性值。第三步:使用session的update()方法进行修改数据。
代码如下:
@Test public void Test3(){ SessionFactory sessionFactory = HibernateUtils.getFactory(); Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); /** * update方法参数说明: * 第一个参数:数据表对于的实体类 */ UserEntity userEntity =session.get(UserEntity.class, 1); userEntity.setName("lilei"); session.update(userEntity); System.out.println(userEntity); tx.commit(); session.close(); sessionFactory.close(); }
四、删除数据操作
删除数据有两种方式:
第一种:先将数据查询出来,然后使用session的delete方法进行数据删除。
代码:
@Test public void Test4(){ SessionFactory sessionFactory = HibernateUtils.getFactory(); Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); /** * delete方法参数说明: * 第一个参数:数据表对于的实体类 */ UserEntity userEntity =session.get(UserEntity.class, 1); session.delete(userEntity); System.out.println(userEntity); tx.commit(); session.close(); sessionFactory.close(); }
第二种:直接new一个实体对象,设置id值,然后调用删除。(不推荐)
@Test public void Test5(){ SessionFactory sessionFactory = HibernateUtils.getFactory(); Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); /** * delete方法参数说明: * 第一个参数:数据表对于的实体类 */ UserEntity userEntity = new UserEntity(); userEntity.setUid(1); session.delete(userEntity); System.out.println(userEntity); tx.commit(); session.close(); sessionFactory.close(); }