1.添加struts2的基础类包到工程
2.添加struts-spring-ploguin.jar到工程
3.添加spring.jar
4.在web.xml中配置 struts dispatcher 和 springContextListner
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
5.2种方式的注入
1.是通过spring 管理 action
在spring 的bean中定义要注入的类bean和action类bean,在struts.xml只配置action类bean的result和action
如applicationContext.xml
<? 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-2.0.xsd" >
< bean id ="chatService" class ="tutorial.ChatServiceImpl" /> //要注入的属性
< bean id ="chatAction" class ="tutorial.ChatAction" scope ="prototype" (这个设置申请的action的类都是新建的,给每个用户不一样的action类)>
< property name ="chatService" >
< ref local ="chatService" />
</ property >
</ bean >
</ beans >
struts.xml配置如下
<! DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd" >
< struts >
< include file ="struts-default.xml" />
< package name ="Struts2_IoC" extends ="struts-default" >
< action name ="Chat" class ="chatAction" (不是原来的类的写法)>
< result > /UserList.jsp </ result >
</ action >
</ package >
</ struts >
2.通过注入方式实现管理
通webwork的ioc注入
默认采用name类型的注入
在struts.properties里面可以通过
struts.objectFactory.spring.autoWire=name(可以有name,type,construts)
或者在struts.xml中设置
<constant name="struts.objectFactory.spring.autoWire" value="type"/>
设置
在applicationContext中只设置要注入的那个属性
然后在action的类中包含一个该属性的set函数就可以注入了,其他同原本的action配置一样