gpt4 book ai didi

java - 你如何看待一个好的Spring+Hibernate DAO模块设计?

转载 作者:行者123 更新时间:2023-11-29 06:47:31 25 4
gpt4 key购买 nike

首先,我们创建代表数据库实体的类,好了,完成了。假设我们使用 Hibernate session 工厂和 JPA 注释。

现在我们必须创建一个 DAO:getUserById、getAllUsers() 等。

关于事务管理,session factory,你有什么推荐的,如何做一个好的设计?

最佳答案

  1. 使 DAO 通用。查看Don't repeat the DAO文章。
  2. 事务管理应该由 spring 管理。使用 JpaTransactionManager .事务可以用两种方式标记,它们应该标记服务类的方法,而不是 DAO:
    • 使用@Transactional在每个交易方法上(结合 <tx:annotation-driven /> 中的 applicationContext.xml )
    • 使用<tx:advice>和适当的<aop:config>
  3. 使用 OpenEntityManagerInViewFilter OpenEntityManagerInViewInterceptor 为了避免LazyInitializationException

Read this了解更多详情。

关于java - 你如何看待一个好的Spring+Hibernate DAO模块设计?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2447917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com