Spring4.3.8学习之 S2SH 整合[六]

如果转载文章请注明出处, 谢谢 !
本系列文章是学习完 Spring4.3.8 后的详细整理, 如果有错误请向我指明, 我会及时更正~

Spring4.3.8

Spring4.3.8学习[一]
Spring4.3.8学习[二]
Spring4.3.8学习[三]
Spring4.3.8学习之 与 Struts2 整合[四]
Spring4.3.8学习之与Hibernate4 整合[五]

因为两个框架的单独整合的例子都已经完成了, 所以 S2SH 三个框架的整合细节没有贴出图片和代码, 大家可以尝试按照我写的步骤进行整合. 我使用的是IDE: Intellij IDEA17 , 如果发现实在解决不了的问题, 欢迎提问.

7. S2SH 框架整合

7.1. 各个框架扮演的角色

Struts2: MVC
Spring :
1.使用 IoC 和 DI 实现完全的面向接口编程, 在 Action 层为了做到完全的面向接口编程, 必须让 action 的实例由 spring 容器产生
2.声明式事务处理: 不需要再管事务了.
Hibernate: 完成数据库操作

7.2. 整合的原则

谁能先测试, 先写谁. 写一步对一步
[1] 持久化类, 映射文件
[2] 引入 sessionFactory
[3] dao, service 层
[4] spring 的声明式事务处理
[5] 写 action和前台

7.3. 步骤

[1] 创建 web 工程, 选择 Spring, Struts2 . 导入其他 jar 包 
[2] 三个资源文件夹: src / config / test 
[3] 创建持久化类 和 映射文件 com.lanou.domain : Person + Person.hbm.xml 
[4] 写 spring 配置文件 . 配置文件不能够只一个   ac-db.xml
[5] 测试 test/com.lanou.s2sh.test/ SessionFactoryTest , SpringUtil 
[6] 创建 dao 层和 service 层类和接口 
[7] 写 spring 声明式事务处理的配置, 并把dao, service 放入 spring 中 , ac-person.xml
[8] 声明式事务测试 
[9] 创建 action, 把 action 放进 spring 容器中. scope=prototype, 测试 action 创建 
[10] action的 struts 配置, struts.xml(src) / struts-person.xml  
[11] web.xml  

7.4 启动流程

  1. Tomcat 启动时候

    Struts2 容器:

    • 加载default.properties 配置文件
    • struts-default.xml
    • struts-plugin.xml
    • 存在 struts2-spring-plugin.jar
    • struts-plugin.xml: struts2的 action 产生, buildBean
    • struts.xml
    • web.xml
    • contextLoaderListener: 初始化spring容器
    • contextConfigLocation: 配置文件路径, 没有会去默认路径查找 WEB-INF

spring容器启动后

  • 创建了 dao和service层的对象和代理对象, 但是 action 没有创建

你可能感兴趣的:(Spring4.3.8学习之 S2SH 整合[六])