【问题标题】:Java EE 7 architecture options for each tier [closed]每层的 Java EE 7 架构选项 [关闭]
【发布时间】:2014-06-26 09:56:11
【问题描述】:
我想使用 java EE 7 技术开发一个 java Web 应用程序。
我还想将它分成 3 层(表示、业务逻辑和数据持久性)。据我所知,presentaion 层有 3 个选项。那些是:
JSP 2.3、JSF 2.2 和 Java Servlet 3.1
其他 2 层有哪些选项?我必须对逻辑业务使用强制性 EJB 3.2,对数据层使用 JAVA Persistence?或者我可以使用 Spring 和 Hibernate 等框架。请记住,我想利用 Java EE 7 技术来开发它。
【问题讨论】:
标签:
java
jsf
ejb
layer
tiers
【解决方案1】:
基本建议是(Adam Bien 在每次演讲中也提出)从基本的 Java EE API 开始,仅在您真正需要时添加框架。
当前执行 Java EE 服务器端 Web 应用程序的标准方法是使用 JSF。不要再为 JSP 操心了,servlet 通常会在后台使用。
至于业务层,您可以使用 EJB,它免费为您提供容器的许多服务(例如事务),但也可以只使用 CDI 组件 - 特别是如果您的目标运行时环境不是完整的应用服务器,例如只是一个 Tomcat。
持久层显然是 JPA。
但是您不必一定要在分离的层级中思考-遵循keep things simple 的原则,您可以从一个组件开始,该组件完全是您的 JSF 视图的视图处理程序,包含您的用例的业务逻辑和相应地持久化实体 - 然后仅在必要时扩展架构。