【发布时间】:2013-01-19 00:47:19
【问题描述】:
我正在设计一个小型 JavaEE Web 应用程序...我有一个 PostgreSQL 数据库,其中包含近 10 个表......我有 Activiti 处理工作流......
我认为 Spring MVC 和 hibernate 非常适合我的要求。
但是有人问,Hibernate 适合我的用例吗?是不是太重了?如何选择对 Web 应用程序可行的 ORM?
也欢迎提出更好的解决方案 :) 谢谢
----更新---------
- 当然应用程序会增长,未来会添加更多表格。
- 我不会使用 DDD。
【问题讨论】:
-
为什么它会太重 - 他们提出了原因吗?
-
很难说。您的服务器能否处理 Hibernate 可能产生的额外负载?该应用程序是否有望在未来增长?您的开发人员是否更习惯于 Hibernate 而不是普通的 JDBC?
-
他们说 Hibernate 是重量级的 ORMapping 并且很难维护 - 对于只有 10 个表的小型 Web 应用程序。
-
有什么轻量级的 ORM 建议可以与 Sping MVC 协调工作吗?
-
Hibernate 会占用一些 PERMGEN 空间用于反射,当然会影响您的记忆。但随着时间的推移,hibernate 已经成熟为一个非常健壮的框架。在我看来,与具有 SQL 知识的普通人能够编写的任何 SQL 相比,它会生成更清晰的 SQL。话虽如此,如果您仍然想轻量级,我建议使用 Spring 的 JDBCTemplate 并使用 DTO 映射器映射您的数据。
标签: hibernate jakarta-ee orm