SSH三大框架整合配置详解

首先,三大框架整合,肯定是要导入相当多的jar包,这是不容置疑的!

    这里就不一一列举了,直接截图吧:

        

   (1) 基于配置文件的整合:

       第一步:我们需要在web.xml中定义一个Struts2的filter:

         

        第二步:编写Struts.xml文件:

         这个就不细说了!!

        第三步:在web.xml中配置一个监听器,因为如果我们要加载applicationContext.xml,然而action是多实例的,如果每请求一次action就要加载一次xml的话,这会使得你的整个项目效率十分低                             下,因此,我的想法是把applicationContext.xml文件放在servletContext中,只加载一次,因此我们就需要配置一个servletContext的监听器。

         

         第四步:先开始Struts2与Spring的整合:先把service,dao,entity,action这些层次建好

        (1.1)Struts2自己管理action的方式:

               

        (1.2) action交给Spring管理:

         action交给Spring管理的话,Struts.xml文件里action的class不应该写全类名,只需要写Spring里的id名即可,并且             要设置scope="prototype",因为action是多例的!!

          其实这里还是推荐你们用Spring管理,因为可以整合Spring的AOP进行统一管理!!

        同时这里要注意的一个地方是,因为这是Struts2余Spring整合,所以这里有一个比较快捷的小技巧,但是这要依赖一个jar包:

         传统方式要通过类来getBean获取service,而这里只需要配置一下常量就可以在action里不需要通过注解或者配置            文件就可以对service直接进行调用,只需要设置一下setService方法即可!!

         第五步:Spring与Hibernate的整合:

          有两种方式:

       (1)零障碍整合

         千万不要忘记了要配置事务管理哦!!

         之所以直接注入sessionFactory就可以调用模板,你打开HibernateDaoSupport类,可以发现,在里面有个setSessionFactory方法里,创建了template

         

         同时要再业务层(service层,用以控制事务)加上:

        (2)无Hibernate配置文件形式

          在Spring中就要配置好Hibernate的一些属性:

            1.c3p0连接池的信息:

            2.hibernate常用属性:

            3.映射关系:

            关于在dao层查询出来的result,如果要传到web层的话,可能在service层就已经将事务关闭,因此在web层不能及时的接收到要获取的对象,因此我们要在web层开启事务!!

            

     (2) 基于注解的整合:

           第1-3步:前三步和上面的xml形式整合是一样的,就不细说了!

            第四步:建立action:

            第五步:注册实体类:

            第六步:之后就是事务管理器的注册和模板注入,和上面一样,就不细说了!!

原文地址:https://www.cnblogs.com/Booker808-java/p/7858656.html