zoukankan      html  css  js  c++  java
  • 条理清晰的搭建SSH环境之整合Struts和Spring

       上文说到搭建SSH环境所需三大框架的jar包,本篇博客将通过修改配置文件整合Struts和Spring,下篇博客整合Hibernate和Spring即可完成环境搭建。

      1、声明bean,新建TestAction.java,需要给类添加注解:@Controller 和 @Scope("prototype");

       “使用@Controller注解标识TestAction之后,就表示要把TestAction交给Spring容器管理,在Spring容器中会存在一个名字为"testAction"的action,这个名字是根据TestAction类名来取的。

       注意:如果@Controller不指定其value【@Controller】,则默认的bean名字为这个类的类名首字母小写,如果指定value【@Controller(value="TestAction")】或者【@Controller("TestAction")】,则使用value作为bean的名字。

      使用@Scope注解,@Scope("prototype")表示将Action的范围声明为原型,可以利用容器的scope="prototype"来保证每一个请求有一个单独的Action来处理,避免struts中Action的线程安全问题。spring 默认scope 是单例模式(scope="singleton"),这样只会创建一个Action对象,每次访问都是同一Action对象,数据不安全,struts2 是要求每次次访问都对应不同的Action,scope="prototype" 可以保证当有请求的时候都创建一个Action对象。”

      2、添加Struts.xml内容,  在<package>下,添加如下配置

            <!-- 配置测试用的action当与spring整合,class=bean的名称(如果bean没有指定value,则首写字母要小写))  -->
            <action name="test" class="testAction">
                <result name="success">/test.jsp</result>
            </action>

      3、在web.xml中配置Spring的监听器。

      

        <!-- 配置spring的用於初始化容器對象的监听器-->
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext*.xml</param-value>
        </context-param>

      4、加一个整合的jar包。

      

      Spring与Struts2的整合成功了,只需要两步,一步是添加Spring的监听器,另一方面是添加整合的jar包。

      需要注意的是:要用@Controller注解标记对应表现层的Bean,也就是Action,就可把他交给Spring容器来管理了。具体的注意点上面已经说过了,很轻松就完成二者的整合了。

  • 相关阅读:
    Linux GNOME桌面使用技巧大全
    联想旭日 C465A 开机白屏
    基础知识:编程的工作机制
    JavaCC 学习笔记
    笨办法学R编程(1)
    一些学习方法总结
    使用变量表示字、数字和值
    栈溢出2017doubly_dangerous
    栈溢出warmup_csaw_2016
    基础学习ret2text
  • 原文地址:https://www.cnblogs.com/jyh317/p/3751375.html
Copyright © 2011-2022 走看看