@Test
	public void testSave1() {
		Session session=null;
		Transaction tx = null;
		User user=null;
		try{
			session=sessionFactory.openSession();
			tx=	session.beginTransaction();
		    user=new User();
			user.setAge(26);
			user.setName("刘江龙");
			user.setCreateTime(new Date());
			user.setExpireTime(new Date());
			
			logger.debug("user即将进入persistent状态");
			/*persistent状态
			  persistent状态的对象，当属性发生变化时，hibernate会自动跟数据库保持同步
			*/
			session.save(user);
			
			user.setAge(25);
			
			/**
			 * 实际上user.setAge(25);此时已经发出了一条update指令了
			 * 也可以显示的调用update指定
			 * session.update(user);
			 */
			logger.debug("session提交事务--【前】还未发送语句");
			tx.commit();
			logger.debug("session提交事务--【后】,发出insert update语句?");
		}catch (HibernateException e) {
			e.printStackTrace();
			tx.rollback();
		}finally{
			if(session!=null){
				session.close();
			}
		}
		
		/**
		 * session已经关闭，这时候user对象的状态就变为detached状态
		 * 所有的user对象已经不被session管理，但数据库中确实存在与之对应的记录(age=25)
		 */
		//detached状态(分离独立状态)
		user.setAge(18);
		
		try{
			session=sessionFactory.openSession();
			tx=session.beginTransaction();
			
			/**
			 * 此时，session有对user对象进行管理
			 * session发出update指令后,进行更新数据为(age=18)
			 */
			session.update(user);
			
			//update后user对象的状态又变为persistent状态(坚固状态)
			logger.debug("session提交事务--前");
			tx.commit();
			//session提交事务，发出update语句
			logger.debug("session提交事务--后，发出update语句？");
		}catch (HibernateException e) {
			e.printStackTrace();
			tx.rollback();
		}finally{
			if(session!=null){
				session.close();
			}
		}
	}