春季-session.isOpen()vs session.isConnected()

前端之家收集整理的这篇文章主要介绍了春季-session.isOpen()vs session.isConnected() 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用Spring 3.1编写Hibernate4示例.

在我的示例中,当我在控制台上打印sessionFactory.getCurrentSession().isOpen()时,它会打印

true

但是我面临一个例外

sessionFactory.getCurrentSession().isConnected()

例外是:

org.hibernate.HibernateException: isConnected is not valid without active transaction

编辑:我用谷歌搜索更多,发现以下解决方

sessionFactory.getCurrentSession().beginTransaction();
sessionFactory.getCurrentSession().isConnected()

但是我不想每次使用诸如isConnected,get,find,save之类的会话方法时,都会每次都开始写开始交易.

>除了上述例外,还有哪些其他可能的解决方案?
>如果将@Transactional放在我的dao类方法上怎么办?

问候,

阿伦·库玛(Arun Kumar)

最佳答案
isConnected很少使用,对于普通的DAO方法则不需要.如果需要,“获取/查找/保存”将在后台打开“连接和事务”,您无需手动进行任何操作.

猜你在找的Spring相关文章