hibernate - 域模型对象在层之间传递开销吗?

标签 hibernate spring model-view-controller orm spring-mvc

我正在开发一个使用 hibernate 和 spring 的项目。 Hibernate封装在一个DAO层中,DAO层也有相应的服务层,还有为请求和JSP页面映射的 Controller 。我被告知不要在这些层( Controller <-> 服务 <-> DAO)之间传递对象,因为它是性能开销。一个特殊的例子是,当我需要更新域对象(ORM 类)中的 bool 值时,我编写了一个在服务层和 DAO 层之间传递域对象的方法,然后我被告知传递对象 ID 和特定的 bool 值仅值并为此在层中编写单独的方法。这是正确的吗?我觉得这样做会使使用 ORM 工具(Hibernate)的许多优势失效。我这样想有错吗?任何建议和见解将是有用的......

最佳答案

你是 100% 正确的。这是可怕的建议。传递对象。这正是 Hibernate 的设计目的,对象正常传递的“性能开销”简直是疯了。除非您不知道有关该应用程序的某些内容,否则请警惕告诉您这些信息的人的建议。

关于hibernate - 域模型对象在层之间传递开销吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7749240/

相关文章:

java - @DataJpaTest 不读取 spring.jpa.* 属性,而 @SpringBootTest 读取

php - 找不到 Yii Basic 404 页面

java - hibernate 中的可变长度Blob?

java - Hibernate 在外键 @oneToone 映射中获取 NULL

java - 在 hql 查询中使用 % 时出现问题

java - Spring MVC Hibernate - 使用多个复选框保存对象

java - 不使用 Hibernate 创建表

java - 使用 hibernate native 查询的错误 BigInteger 结果

java - 如何将 Spring Boot 日志记录数据放入数据库?我想将所有 INFO 和 ERROR 消息放入数据库

css - 使用 MVC 3 在 IIS 6 上动态创建 Site.css。在 dev 中工作,prod 失败。为什么?