Spring 在 Struts + Spring + Hibernate 中扮演什么角色?

有帮助吗?

解决方案

Spring提供了许多不同的“模块”,不同的程序员将使用Spring的不同部分。

然而,通常在这种堆栈中,您会看到 Spring 被用作

  • 用于依赖注入的控制容器反转
  • Hibernate 的抽象称为“HibernateTemplate”
  • 用于简化面向方面编程的框架类
  • 事务支持,通常通过 IoC 容器和 AOP 进行“声明式”支持。

其他提示

好吧,Hibernate处理持久性部分,JSP处理你的GUI,Struts控制页面/动作/等之间的流程,Spring可以管理包含主要业务逻辑的所有bean,而不是使用EJB。此外,它还可以简化Hibernate DAO和事务管理的编码。 您无需编写Locator代码来通过JNDI和所有这些东西获取某些EJB,您只需获取Spring ApplicationContext并询问您需要的bean。 Spring中定义的所有bean都可以互连。如果必须通过JNDI将一个bean连接到外部EJB,您甚至可以在没有任何代码的情况下执行此操作(Spring提供了一个JNDI代理对象,该对象获取您提供的引用并将其作为具有您指定的接口的对象返回)。这可以帮助您简化所有这些bean的单元测试并更改配置而无需重新编码任何内容;您可以使用Spring的PlatformTransactionManagers之一来管理DataSource或将其指向J2EE容器的JTA管理器;定义您自己的池化DataSource或使用通过JNDI等发布的容器的DataSource。

好的补充;

(视图和控制器)Struts具有Struts标签和Web请求处理功能的广泛JSP功能

(服务和应用程序管理)Spring通过优秀的依赖注入等处理ORM和服务层。

(具有db独立性的ORM)Hibernate用于经过充分验证的ORM

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top