博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SSH 整合框架(自整理)
阅读量:6722 次
发布时间:2019-06-25

本文共 2950 字,大约阅读时间需要 9 分钟。

  hot3.png

Spring 是系统核心框架,应用 Spring 框架提供的 IOC(DI)、AOP 等技术,

把 Struts 2、Hibernate 对象由 Spring 容器进行解耦合管理,
便于系统可扩展性和维护,也增强系统灵活性,例如可以自由替换持久化数据技术,
JDBC、Mybatis 和 Hibernate 之间切换,同时减少开发工作量,提高开发效率
                                
                                
                                                                                整合思路
说白了整合就是实现 Spring 与 Struts2 和 Spring 与 Hibernate 的整合,实际整合就是将struts2、hibernate中的对象配置到spring容器
中,由 Spring 来管理。

1. Struts 2 和 Hibernate 是俩个独立的框架,所以先添加这俩个框架支持;

    创建包:dao、entity、service、action、utils
    添加:Struts 2 和 Hibernate 等jar包
        Hibernate3.3.2
            antlr-2.7.6.jar
            cglib-2.2.jar
            commons-collections-3.1.jar
            commons-lang-2.4.jar
            dom4j-1.6.1.jar
            hibernate3.jar
            javassist-3.9.0.GA.jar
            jta-1.1.jar
            log4j_128.jar
            ojdbc6.jar
            slf4j-api-1.5.8.jar
            slf4j-log4j12-1.5.8.jar
        Struts2.3.15.1
            commons-fileupload-1.3.jar
            commons-io-2.0.1.jar
            commons-lang3-3.1.jar
            commons-logging-1.1.3.jar
            freemarker-2.3.19.jar
            javassist-3.11.0.GA.jar
            ognl-3.0.6.jar
            struts2-core-2.3.15.1.jar
            xwork-core-2.3.15.1.jar
    添加:实体,编写entity.hbm.xml文件,配置相关的对象关联关系
    添加:hibernate.cfg.xml 配置文件,引入对象映射文件
    添加:default.xml,Struts.xml,和 Web.xml文件(过滤器,Struts 2启动文件)
    添加:log4j.properties 日志记录文件
    添加:Utils包下ExportDDL.java(正向工程直接生成表)
    编写:Dao,Impl,Service,Impl等方法待用,其中 Impl 中属性要通过 applicationContext.xml 中注入..参考项目

2.实现spring和hibernate整合,配置数据源对象为hibernate配置SessionFactory对象,

  实现并配置DAO和Service。需要为业务层添加声明式事务管理

      添加 Spring 框架支持 Jar 包:

       Spring3.1.1
        org.springframework.aop-3.1.1.RELEASE.jar
        org.springframework.asm-3.1.1.RELEASE.jar
        org.springframework.aspects-3.1.1.RELEASE.jar
        org.springframework.beans-3.1.1.RELEASE.jar
        org.springframework.context-3.1.1.RELEASE.jar
        org.springframework.context.support-3.1.1.RELEASE.jar
        org.springframework.core-3.1.1.RELEASE.jar
        org.springframework.expression-3.1.1.RELEASE.jar
     新增 Spring AOP 支持、ORM、事务、JDBC 和 Web Jar
        aopalliance.jar
        aspectjweaver.jar
        cglib-nodep-2.2.3.jar
        org.springframework.jdbc-3.1.1.RELEASE.jar
        org.springframework.orm-3.1.1.RELEASE.jar
        org.springframework.transaction-3.1.1.RELEASE.jar
        org.springframework.web-3.1.1.RELEASE.jar
        asm-3.3.jar(在struts2 lib里)
     Struts2 与 Spring 整合 Jar,将 Struts2 对象创建交由 Spring 管理
        struts2-spring-plugin-2.3.15.1.jar 
     删除相同的 Jar
        cglib-2.2.jar、commons-lang-2.4.jar、javassist-3.11.0.GA.jar
        org.springframework.context.support-3.1.1.RELEASE.jar
      添加:applicationContext.xml 配置文件
          (1)配置SessionFactory对象
          <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            <property name="configLocation">
                <value>classpath:hibernate.cfg.xml</value>
            </property>
        </bean>
        配置Dao实现类中的属性:sessionFactorys
        并使用:this.getHibernateTemplate().find()等方法使用SessionFactory对象
        (2)定义Spring声明式事务
            定义事务管理器
            配置事务规则

        (3)AOP 配置,并设置切入点、织入

        (4)定义Dao、Service、Action 等 Bean 方便注入使用

3.实现 Srping 和 Struts2 整合,导入struts2-spring-plugin-2.3.15.1.jar驱动,
      将 Action 对象的创建和管理由 StrutsSpringObjectFactory 创建,并注入业务对象。
  实现有俩种方式:
      第一种采用 Spring 自动装配(按名称匹配的方式,注意注入业务对象 提供setter的set+业务对象命名规范)
      第二种由 Spring 容器管理 Struts2 的 Action 对象,配置过程。(重点注意struts.xml class修改为bean id)

      编写:Action(理解为控制层吧!)

    编写:Struts.xml 文件  
        重点注意指向Class:不是直接指定而是指向 applicationContext.xml 中定义的 bean id

转载于:https://my.oschina.net/Shilu/blog/743044

你可能感兴趣的文章
未来技术与安全
查看>>
2012中国虚拟化及云计算技术年度市场研究报告
查看>>
进程管理
查看>>
python面试题
查看>>
Kali 开机自动启动服务
查看>>
我的友情链接
查看>>
SQL(三)、SQL语句练习
查看>>
XenServer 6.5实战系列之三:Prepare for XenServer 6.5
查看>>
红帽5.8 yum小记
查看>>
日历源代码
查看>>
我的友情链接
查看>>
Ascll、GB2312、Ansi
查看>>
ubuntu ftp 服务器搭建
查看>>
2.1、Android Studio通过Lint提升你的代码
查看>>
魔域深渊
查看>>
[转]How I explained OOD to my wife
查看>>
ffmpeg 去除图片中的水印
查看>>
将博客搬至CSDN
查看>>
Java线程创建形式 Thread构造详解 多线程中篇(五)
查看>>
Hexo博客系列(二)-在多台机器上利用Hexo发布博客
查看>>