Hibernate CURD操作

1、在 PersonTest 中实现查询
			public  class  PersonTest  extends  HibernateUtils{
				// 查询全部值
				@Test
				public  void  testQueryPerson(){
					Session  session = sessionFactory.openSession();	//打开与数据库的链接
					List<Person>  personList = session.createQuery(" from  Person").list();	//参数为 HQL语句,Person是持久化类的名字
					for(Person  person: personList){
						s.o.p(person.getPname());
					}
					session.close();	//关闭与数据库的链接
				}

				// 查询某一个值
				public  void  testQueryPersonById(){
					Session  session = sessionFactory.openSession();	//打开与数据库的链接

					/*
					  * 按照主键方式查询数据库表中的记录,
					  *  第二个参数的类型必须和持久化中标识符的类型保持一致
					  */
					Person  person = (Person)session.get(Person.clazz,  1L)	//参数为 HQL语句,Person是持久化类的名字
					s.o.p(person.getPname());

					session.close();	//关闭与数据库的链接
				}

				// 删除,Hibernate内部会检查标识符,看标识符中的值和数据库中对应的表中有没有对应的记录,有的话就删除
				@Test
				public  void  testDeletePerson(){
					Session  session = sessionFactory.openSession();	//打开与数据库的链接
					Transaction  transaction  = session.beginTransaction();
					
					/*方法一:
					  * 1、根据ID,把值从数据库中查找出来
					  * 2、把对象删除掉
					  */
					//Person  person = (Person)session.get("Person.clazz,  1L);
					//session.delete(person);	
					
					/*方法二:
					  * 1、新创建一个person 对象
					  * 2、给person对象的标示符赋值
					  * 3、调用 session.delete() 删除
					  */
					Person  person = new Person();
					person.setPid(2L);
					session.delete(person);	

					transaction.commit();
					session.close();	//关闭与数据库的链接
				}


				// 修改
				@Test
				public  void  testUpdatePerson(){
					Session  session = sessionFactory.openSession();	//打开与数据库的链接
					Transaction  transaction  = session.beginTransaction();
					/*
					  * 1、根据ID,把值从数据库中查找出来
					  * 2、进行修改
					  * 3、进行update操作
					  */
					Person  person = (Person)session.get("Person.clazz,  1L);
					session.setPsen("保密");	
					session.update(person);


					transaction.commit();
					session.close();	//关闭与数据库的链接
				}
			}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值