我正在进行hibernate applciation,我使用hibernate.c3po
配置来调整可能的连接数。我的问题是有些用户抱怨数据库连接在使用几分钟后崩溃了。在cfg
文件中,我还使用以下行:
<property name="hibernate.c3p0.max_size">5</property>
<property name="hibernate.c3p0.min_size">1</property>
在交易中我总是使用currentSession
:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction tx = HibernateUtil.getTransaction(session);
try
{
tx.begin();
session.update(u);
tx.commit();
}
catch (Exception e)
{
tx.rollback();
e.printStackTrace();
}
为了使数据库连接可靠,适当的改进/优化是什么?
我也应该使用hibernate.c3p0.timeout
属性吗?在这种情况下它会有什么影响?
如果我使用openSession
代替getCurrentSession
会更好吗?虽然session
与connection
无关,但我有一种印象。我是对的吗?