Java Struts2完整的Hibernate插件是集成Struts2和Hibernate的标准方式吗?

Java Struts2完整的Hibernate插件是集成Struts2和Hibernate的标准方式吗?,java,hibernate,jakarta-ee,struts2,standards,Java,Hibernate,Jakarta Ee,Struts2,Standards,我正在启动一个项目,愿意使用Struts2和Hibernate 我应该使用插件,还是以不同方式集成它们 在互联网上搜索让我困惑:这是整合它们的标准方式吗?如果不是,标准方式是什么?简而言之: 为前端选择一个框架(通常是MVC,然后是Struts2,JSF2,Spring MVC,等等……您已经选择了Struts2。Java EE 6+堆栈中的标准(不一定是最好的,也不一定是最常用的)是JSF2) 选择一个持久性管理器: 带有JavaEE6+的标准是JPA2.0(-JavaPersistence

我正在启动一个项目,愿意使用Struts2和Hibernate

我应该使用插件,还是以不同方式集成它们

在互联网上搜索让我困惑:这是整合它们的标准方式吗?如果不是,标准方式是什么?

简而言之:

  • 为前端选择一个框架(通常是MVC,然后是Struts2JSF2Spring MVC,等等……您已经选择了Struts2。Java EE 6+堆栈中的标准(不一定是最好的,也不一定是最常用的)是JSF2)
  • 选择一个持久性管理器:

    • 带有JavaEE6+的标准是JPA2.0(-JavaPersistenceAPI)。JPA只是注释,您需要一个实现它们的库Hibernate可以用作JPA实现。Hibernate不是唯一的JPA提供者,但它是使用最多的(不一定是最好的),因此也是最标准的。使用此配置,您可以根据执行CRUD的位置来构造应用程序的层。DAO层也不再需要了,因为JPA的EntityManager就是DAO本身

    • 您可以使用原始Hibernate及其专有注释(或任何其他持久性管理器),在这种情况下,使用Struts2,您可以使用(vintage?)。它简化了一些工作,但强制您使用

  • 在选择了框架和持久性管理器之后,您需要选择一个DI(依赖注入)管理器。如果您使用的是JavaEE6+,标准是使用CDI(-Contexts和Dependency Injection)。在JavaEE6之前,或者对于怀旧的开发人员来说,Spring仍然可用。当JavaEE缺少DI/IoC(控制反转)时,它是第一个提供DI/IoC(控制反转)的库

    具体而言,使用Struts2,您可以:

    • 将CDI与
    • 将Spring与集成

  • 结论 根据Java EE,Struts2(而不是JSF2)的标准配置是:

    • Struts2
    • JavaEE6+(CDI+JPA2.x+EJB3.x)
    • 休眠4.x
    • Struts2 CDI插件
    简言之:

  • 为前端选择一个框架(通常是MVC,然后是Struts2JSF2Spring MVC,等等……您已经选择了Struts2。Java EE 6+堆栈中的标准(不一定是最好的,也不一定是最常用的)是JSF2)
  • 选择一个持久性管理器:

    • 带有JavaEE6+的标准是JPA2.0(-JavaPersistenceAPI)。JPA只是注释,您需要一个实现它们的库Hibernate可以用作JPA实现。Hibernate不是唯一的JPA提供者,但它是使用最多的(不一定是最好的),因此也是最标准的。使用此配置,您可以根据执行CRUD的位置来构造应用程序的层。DAO层也不再需要了,因为JPA的EntityManager就是DAO本身

    • 您可以使用原始Hibernate及其专有注释(或任何其他持久性管理器),在这种情况下,使用Struts2,您可以使用(vintage?)。它简化了一些工作,但强制您使用

  • 在选择了框架和持久性管理器之后,您需要选择一个DI(依赖注入)管理器。如果您使用的是JavaEE6+,标准是使用CDI(-Contexts和Dependency Injection)。在JavaEE6之前,或者对于怀旧的开发人员来说,Spring仍然可用。当JavaEE缺少DI/IoC(控制反转)时,它是第一个提供DI/IoC(控制反转)的库

    具体而言,使用Struts2,您可以:

    • 将CDI与
    • 将Spring与集成

  • 结论 根据Java EE,Struts2(而不是JSF2)的标准配置是:

    • Struts2
    • JavaEE6+(CDI+JPA2.x+EJB3.x)
    • 休眠4.x
    • Struts2 CDI插件

    完整的Hibernate插件2.2.2 GA发布(2010年11月11日)-你怎么看?为什么所有这些投票都以意见为主?他不是在问最好的,他在问更标准的问题,标准是事实,JSR是黑白相间的。这不是关于“如何使用hibernate?”@Aleksandr MFull hibernate Plugin 2.2.2 GA发布(2010年11月11日)-你怎么看?为什么所有这些投票都以主要基于意见的方式结束?他不是在问最好的问题,而是在问更标准的问题,标准是事实,JSR是黑白相间的。这不是关于“如何使用hibernate?”@Aleksandr M