Java Hibernate:sessionFactory.openSession()与sessionFactory.getCurrentSession()的比较
我试图在Spring4(Java配置)中创建一个web应用程序。我使用postgres作为数据库,C3P0作为连接池。 我的所有数据库事务都发生在postgres存储过程/函数中。我正在使用Hibernate@调用存储过程 我有两个问题: 1.我的应用程序将有多个用户同时登录。所以我应该使用sessionFactory.openSession()还是sessionFactory.getCurrentSession()来获取hibernate会话? 2.我应该在SpringMVC4中使用hibernate调用存储过程还是内置支持?我知道这两种方法,但我更喜欢hibernate,因为与spring方法相比,hibernate需要的工作量非常少,但我觉得hibernate使我的应用程序速度变慢了,但不确定Java Hibernate:sessionFactory.openSession()与sessionFactory.getCurrentSession()的比较,java,spring,hibernate,postgresql,spring-mvc,Java,Spring,Hibernate,Postgresql,Spring Mvc,我试图在Spring4(Java配置)中创建一个web应用程序。我使用postgres作为数据库,C3P0作为连接池。 我的所有数据库事务都发生在postgres存储过程/函数中。我正在使用Hibernate@调用存储过程 我有两个问题: 1.我的应用程序将有多个用户同时登录。所以我应该使用sessionFactory.openSession()还是sessionFactory.getCurrentSession()来获取hibernate会话? 2.我应该在SpringMVC4中使用hiber
请帮助我找到这些问题的答案。第一个问题的答案: 您应该为每个用户连接一个会话。例如,如果您在一个servlet上下文中,您可以有一个servlet过滤器来为每个servlet线程调用
sessionFactory.openSession()
对第二个问题的答复:
性能和优化不是一种感觉。如果你觉得休眠速度慢,请测量一下,并尝试了解原因。你必须测量它的速度。你也可以用一个简单的例子来尝试这两种解决方案,并知道在哪里你感觉更舒服