Struts2【整合Spring】

时间:2022-05-04
本文章向大家介绍Struts2【整合Spring】,主要内容包括前言、搭建环境、写配置文件、web.xml文件、编写Spring配置文件、编写Struts2配置文件、最后、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

前言

Spring的第二和第三篇已经讲解了Spring的基本要点了【也就是Core模块】…本博文主要讲解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源码】

这里写图片描述

写配置文件

  • 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>

这里写图片描述

编写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配置文件

<?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>

这里写图片描述

最后

这里写图片描述

这里写图片描述