2016-12-25 158 views
0

有没有一种方法可以使我的连接到数据库Hibernateper-session而不是per-request?因为我已经在我的网页中发现的每个请求应用程序Hibernate配置被重新创建,并可能影响性能。休眠:更改休眠连接

回答

1

你应该保持相同的SessionFactory无需重新创建一个。所以,你需要使它静态的。

例子:

public class HibernateUtils{ 
    private static SessionFactory session; 

    private static void createSession(){ 
     sessionFactory = new Configuration().configure().buildSessionFactory(); 
    } 
    public static Session getSession(){ 
     if(session == null) 
      createSession() 
     return session.openSession(); 
    } 
} 

当你将称之为“HibernateUtils.getSession()”,将创建会话仅当不存在

当然,你需要关闭会话需要的时候

+0

谢谢你,这是非常有帮助 –