hibernate学习(四)

实体类对象状态(概念)

1 实体类状态有三种


(1)瞬时态,对象里面没有id值,对象与session没有关联

            User user=new User();  
            user.setUsername("小马哥");  
            user.setPassword("520");  
            user.setAddress("美国");  

(2)持久态:对象里面有id值,对象与session有关联

User user=session.get(User.class, 1);  

(3)托管态:对象里面有id值,但是对象与session没有关联

  //User user=new User();
           //user.setUid(3);

2 演示操作

(1)saveOrUpdate方法:实现添加、实现修改(重点看注释)

        @Test
        public void testAdd() {
  	 		 SessionFactory sessionFactory=HibernateUtils.getSessionFactory();
             Session session=sessionFactory.openSession();  
             Transaction tx=session.beginTransaction();    
             User user=new User();
             user.setUsername("jack");
             user.setPassword("520");user.setAddress("朝鲜");
             //  注释:实体类属性是顺时态,则为添加操作
             session.saveOrUpdate(user); 
             tx.commit();  
             session.close();  
             sessionFactory.close();
        }
        @Test
        public void testAdd() {
  	     SessionFactory sessionFactory=HibernateUtils.getSessionFactory();
             Session session=sessionFactory.openSession();  
             Transaction tx=session.beginTransaction();    
            User user=new User();
             user.setUsername("jack");
             user.setPassword("520");user.setAddress("朝鲜");*/
             User user=new User();         //实体类属性是托管态,则为修改操作
             user.setUid(3);
             user.setUsername("小曼曼");
             user.setPassword("1314");user.setAddress("艾瑞巴尼亚");
             session.saveOrUpdate(user);            
             tx.commit();               
             session.close();               
             sessionFactory.close();        
            }
       
        @Test
        public void testAdd() {
  	 		 SessionFactory sessionFactory=HibernateUtils.getSessionFactory();
             Session session=sessionFactory.openSession();  
             Transaction tx=session.beginTransaction();    
             User user=session.get(User.class, 5);
             user.setUsername("李雷");
             //实体类属性是持久,则为修改操作
             session.saveOrUpdate(user); 
             tx.commit();  
             session.close();  
             sessionFactory.close();
        }





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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值