Spring整合Struts2
步骤:1、导入Struts2jar相关包,并且导入Struts2-Spring-plugin-2.0.11.2.jar
2、配置xml文件:配置Struts2过滤器和Spring上下文参数和监听器
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <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> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <listener> <listener-class>com.pb.listener.SpringContextLoaderListener</listener-class> </listener> </web-app>
3、配置Spring配置文件。
主要用来配置Struts2中的Action,之后,此Action需要被Struts2配置文件调用。例如:
<!-- 配置一个Struts2中的Action的Bean示例 --> <bean id="loginAction" class="Action.LoginAction"> <property name="userDao"> <ref local="userDao"/> </property> </bean>
4、配置Struts2配置文件。
1、在Struts2配置文件中,添加一个<constent>标签,指定Action的创建工厂由Spring来完成:
<constant name="struts.objectFactory" value="spring"></constant>
2、调用Spring配置文件中的配置的Action Bean,其中,class属性指向Spring配置文件中的Bean id
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"> <struts> <constant name="struts.objectFactory" value="spring"></constant> <package name="default" namespace="/" extends="struts-default"> <action name="login" class="loginAction" > <result name="success">index.jsp</result> </action> </package> </struts>
5、Struts的Action类需要继承ActionSupport
创建Action类的时候需要继承ActionSupport类
时间: 2024-10-26 08:25:23