首页 > Windows开发 > 详细

hibernate--coreapi--configuration sessionfactory--getcurrentsession--opensession

时间:2016-04-20 21:33:35      阅读:299      评论:0      收藏:0      [点我收藏+]

sessionfactory的目的:产生session,维护数据库连接池

测试文件里的sessionfactory创建数据库连接,所以sessionFactory通过配置文件里的配置信息产生一个数据库连接池, 从中取出一个数据库连接.

sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();

configure用于调用数据库信息, configure()里面可以指定hibernate.cfg.xml的名字

用getCurrentSession产生一个session:

@Test
	public void testTeacherSave() {	
		Teacher t = new Teacher();		
		t.setName("t1");
		t.setTitle("middle");
		t.setBirthDate(new Date());		
		//Session session = sessionFactory.openSession();
		Session session = sessionFactory.getCurrentSession();		
		session.beginTransaction();
		session.save(t);		
		Session session2 = sessionFactory.getCurrentSession();		
		System.out.println(session == session2);		
		session.getTransaction().commit();		
		Session session3 = sessionFactory.getCurrentSession();		
		System.out.println(session == session3);		
	}
openSession() 永远是创建一个新的session, 此session需要close, 而getCurrentSession()如果环境中有session就拿环境中的, 不需要close.

  

 

  

 

hibernate--coreapi--configuration sessionfactory--getcurrentsession--opensession

原文:http://www.cnblogs.com/wujixing/p/5414109.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!