struts2与spring的简单集成

        常说SSH框架,想必大家都不陌生吧,将其分开无非也就是三个单独的框架,将其结合在一起则会更好的方便开发人员进行开发,同时也为项目的快速开发打下了很好的基础,那么他们是如何在一起配合应用的呢?下面请看struts2与spring的简单集成。

其实他们的集成很简单,也就是分为4个部分:

    1、加入所需要的jar包

    2、编写页面jsp

    3、编写Action

    4、配置(配置文件web.xmlstruts.xmlapplicationContext.xml

大体SSH中struts2与spring的简单集成无非上面一条流程,下面就来气具体实施过程:

1、加入jar包,不用多说,来张图就一清二楚了:

          struts2与spring的简单集成_第1张图片

2、编写jsp页面,同样由简单入手:

        <form action="login.action">

        用戶名:<input type="text" name="username"><br>
        密碼:<input type="password" name="password"><br>
        <input type="submit" value="submit">
    </form>

3、编写Action代码,这个就和我们以前学的后台一样了,如下:

    public class LoginAction extends ActionSupport {

        private String username;
        private String password;
        //get、set方法省略...
        @Override
        public String execute() throws Exception {
            System.out.println("LoginAction");
            return SUCCESS;
        }
    }
4、配置配置文件,不要一看配置文件那么多就感到头大,其实很简单,要分清每一个配置文件是干什么用的就好了,下面来看:

     1)web.xml,这个文件我们应该很熟悉吧,一般web应用程序都会有,其作用用在SSH中一般都用来加载Struts2,如下面的:

      <!-- struts2的配置,拦截器 -->
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  
  <!-- spring的配置 -->
  <!-- 加载spring的配置文件 -->
  <context-param>
     <param-name>contextConfigLocation</param-name>
     <param-value>classpath:config/applicationContext.xml</param-value>
   </context-param>
   <!-- 初始化spring配置文件的加载器 -->
   <listener>
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
   </listener>
        2)struts.xml,这个文件是Struts2的配置文件,其中加载Struts的一些配置信息,比如页面跳转,拦截器等等,入下:

             <struts>

    <!-- struts2的action创建交给spring管理 -->
    <constant name="struts.objectFactory" value="spring"></constant>
    <!-- struts2的配置 -->
    <package name="struts2" extends="struts-default" namespace="/">
        <action name="login" class="loginAction">
            <result name="success">/success.jsp</result>
            <result name="input">/error.jsp</result>
        </action>
    </package>
</struts>
        3)applicationContext.xml,最后一个配置文件则是为spring进行服务的,Struts和spring的结合也就在此处,一般客户端调后台的Action,都会将这些Action配置到这个文件中,以实现自动注入功能,如在Struts.xml文件汇总红色突出显示的为一个类,这个类则实际上配置到这个文件中,入下:

    <!-- 配置struts2的Action -->
    <bean name="loginAction" class="com.tgb.action.LoginAction" scope="prototype">
    </bean>


好了,讲到这里已经很清楚了,下面就是该运行看效果了,这里省略....。上面的其实只有配置文件这一块乱点,但只要分清每一个配置文件的用,也就变的非常简单了。

你可能感兴趣的:(ssh)