前言

本博文主要讲解Spring怎么与Struts2框架整合

Struts2和Spring的整合关键点

  • action对象交给Spring来创建
搭建环境

进入jar包

引入jar文件:

  • 1)引入struts .jar相关文件
  • 2)spring-core 相关jar文件
  • 3)spring-web 支持jar包
    • spring-web-3.2.5.RELEASE.jar 【Spring源码】
    • struts2-spring-plugin-2.3.4.1.jar 【Struts源码】

Struts2与Spring整合_Java

写配置文件

  • struts.xml 【struts路径与action映射配置】
  • bean.xml 【spring ioc容器配置】
  • web.xml
    • 【核心过滤器: 引入struts功能】
    • 【初始化spring的ioc容器】查看Spring的API

web.xml文件

web.xml文件

除了要配置Struts2的分配器,还要加载Spring的配置文件


<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <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>


    <!-- 2. spring 配置 -->
    <context-param>
        <param-name>contextConfigLocation</param-name>


        <param-value>/WEB-INF/classes/bean*</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

</web-app>

Struts2与Spring整合_Java_02

编写Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

</beans>

Struts2与Spring整合_spring_03

Struts2与Spring整合_Java EE_04


编写Struts2配置文件

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <package name="aaa" extends="struts-default">

        <action name="bbb" class="userAction">
            <result name="success" >/2.jsp</result>
        </action>

    </package>


</struts>

Struts2与Spring整合_Java EE_05

最后

Struts2与Spring整合_Java Web_06

Struts2与Spring整合_Java Web_07

如果文章有错的地方欢迎指正,大家互相交流。习惯在微信看技术文章,想要获取更多的Java资源的同学,可以关注微信公众号:Java3y