我最近开始使用hibernate和spring。什么是与弹簧一起使用休眠的正确方法
在开始时,我被告知使用sessionFactory和openSession与beginTransaction一起执行数据库调用。
后来我听说了dao的,所以我开始使用它创建一个接口,在类中实现这个接口,然后让这个类扩展HibernateDAOSupport。
我觉得这是相当稳定的,直到一位同事告诉我这种方式已被弃用,并且我不应该使用HibernateDAOSupport类。但是改为在我的dao实现类中使用SessionFactory实例,并在新的独立服务类中使用该类的实例。既然这看起来也是一个很好的方法,我决定走这条道路。
刚才我读到这个方法也被新版本的春天弃用了...... 所以我的问题是:究竟什么才是将冬眠和春天结合在一起的正确的最新方式? ?
我也听说过一个实体经理,那是什么?
我在寻找使用它们的一般方法,如果有一般规则的例外,请也提供这些例外的例子。
感谢您的详细答案,但有一个问题:您会直接使用带有sessionFactory的服务,而不是使用具有带有sessionFactory的DOA的服务?这样做的任何理由? – Mike
这取决于你。我将会话工厂放在我的服务中以简化我的示例。 – limc