简而言之:
- 为前端选择一个框架(通常是MVC,然后是 Struts2 , JSF2 , Spring MVC 等等),您已经选择了 Struts2。Java EE 6+堆栈中的标准(不一定是更好的,也不是最常用的)是JSF2);
Java EE 6+ 的标准是 JPA 2.0 (JSR 317 -Java Persistence API)。JPA只是注释,您需要一个实现它们的库; Hibernate 可用作JPA实现。Hibernate不是唯一的JPA提供程序,但它是使用最多的(不一定是最好的),因此是最标准的。使用此配置,您可以通过将表示层(Struts2 *** 作)与执行CRUD 的持久层分开来构造应用程序的层。由于JPA的EntityManager 是 dao本身,因此也不再需要DAO层。
否则,您可以将 _原始_Hibernate及其专有注释(或任何其他持久性管理器)一起使用,在这种情况下,对于Struts2,您_可以_使用(vintage?)Struts2-Full-Hibernate插件。它简化了一些工作,但是迫使您使用 OSIV (Open-Session-In-View)(anti)pattern。
选择了框架和持久性管理器之后,您需要选择一个 DI (依赖注入)管理器。如果使用的是Java EE 6+,则标准是使用 CDI (JSR 299-上下文和依赖注入)。在Java EE 6之前或对于怀旧的开发人员,Spring仍然可用。当Java EE缺少它时,它是第一个提供DI / IoC(控制反转)的库。
具体来说,使用Struts2,您可以:
* 将 **CDI** 与 **Struts2-CDI-plugin** 集成;* 将 **Spring** 与[**Struts2-Spring-plugin** 集成。
结论
根据Java EE,Struts2(而不是JSF2)的标准配置是:
- Struts2
- Java EE 6+ (CDI + JPA 2.x + EJB 3.x)
- hibernate4.x
- Struts2-CDI插件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)