SSH三大框架整合

整合原理

web开发分三层
SSH三大框架整合

spring为Struts2创建Action对象,对其实现 DI (依赖注入) 和 IOC (控制反转)。

spring与hibernate整合,使用spring管理SessionFactory,spring负责session维护和AOP事务。

.

导包(39个)

hibernate

  1. hibernate/lib/required
    SSH三大框架整合
  2. hibernate/lib/jpa ( java persist api java的持久化规范(接口))
    SSH三大框架整合
  3. 数据库驱动
    SSH三大框架整合

struts2

  1. struts-blank.war/WEB-INF/lib/*
    SSH三大框架整合
    注意:javassist-3.18.1-GA.jar包与hibernate中的重复,选择版本新的保留一个即可。

  2. struts整合spring插件包
    SSH三大框架整合
    注意:这个包一旦导入,那么struts2在启动时就会寻找spring容器.找不到将会抛出异常

spring

  1. 基本:4+2
    core|beans|context|expression|logging|log4j
  2. 整合web:web包
    spring-web
  3. 整合aop:4个
    spring-aop|spring-aspect|aop联盟|aopweaving
  4. 整合Hibernate和事务:4个
    spring-jdbc|spring-tx|c3p0|spring-orm
  5. 正junit4测试:test包
    spring-test

myeclipse自带jstl标签库。


单独配置spring容器

  1. 创建配置文件,并导入约束(4个)
    beans|context|aop|tx
    SSH三大框架整合
    SSH三大框架整合
    可以写个action类测试下。

单独配置struts2

  1. 配置struts2主配置文件
    SSH三大框架整合

  2. 配置struts2核心过滤器到web.xml

    SSH三大框架整合

struts2与spring整合

  1. 导包(已经导入)
    struts2-spring-plugin-2.3.24.jar

  2. 配置常量
    SSH三大框架整合
    SSH三大框架整合

  3. 整合

    整合方案1:struts2自己创建action,spring负责组装依赖属性
    SSH三大框架整合
    不推荐理由:最好由spring完整管理action的生命周期.spring中功能才应用到Action上.

    整合方案2:spring负责创建action以及组装.
    SSH三大框架整合
    applicationContext.xml
    SSH三大框架整合
    struts.xml

单独配置hibernate

  1. 导入实体类&orm元数据
    SSH三大框架整合

  2. 配置主配置文件
    SSH三大框架整合
    SSH三大框架整合
    SSH三大框架整合

spring整合hibernate

  1. 整合原理
    将sessionFactory对象交给spring容器管理

  2. 在spring中配置sessionFactory

    配置方案一:
    SSH三大框架整合

    配置方案二:
    SSH三大框架整合

spring整合c3p0连接池

  1. 配置db.properties
    SSH三大框架整合
  2. 引入连接池到spring中
    SSH三大框架整合
  3. 将连接池注入给SessionFactory
    SSH三大框架整合

spring整合hibernate环境操作数据库

  1. Dao类创建:继承HibernateDaoSupport
    SSH三大框架整合
    注意:在导包时一定要导入与 Hibernate 版本相同的包。
  2. hibernate模板的操作
    execute
    SSH三大框架整合
    findByCriteria
    SSH三大框架整合
  3. spring中配置dao
    SSH三大框架整合

spring的aop事务

  1. 准备工作
    SSH三大框架整合
  2. xml配置aop事务
    配置通知
    SSH三大框架整合
    配置织入
    SSH三大框架整合
  3. 注解配置aop事务
    开启注解事务
    SSH三大框架整合
    Service类中使用注解
    SSH三大框架整合
    SSH三大框架整合

扩大session作用范围

为了避免使用懒加载时出现no-session问题.需要扩大session的作用范围

配置filter
SSH三大框架整合
SSH三大框架整合
确保任何 filter 在 struts2 的 filter 之前

注意在导包时,要导入对应的版本。