首页 > 代码库 > Spring4学习笔记-Spring4整合Struts2

Spring4学习笔记-Spring4整合Struts2

wKiom1QlGl3BstzmAACWUbGNplE534.jpg

Person.java

public class Person {
	private String username;
	
	public void setUsername(String username) {
		this.username = username;
	}
}

PersonService.java

public class PersonService {

	public void save() {
		System.out.println("PersonService save...");
	}
}

PersonAction.java

public class PersonAction {

	private PersonService personService;
	
	public void setPersonService(PersonService personService) {
		this.personService = personService;
	}
	
	public String execute() {
		personService.save();
		return "success";
	}
}


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.xsd">

	<bean id="person" class="com.spring.beans.Person">
		<property name="username" value="http://www.mamicode.com/spring"></property>
	</bean>
	
	<bean id="personService" class="com.spring.services.PersonService">
	</bean>
	
	<!-- 注意:在配置IOC容器中配置Struts2的Action时需要配置scope属性,其值必须为prototype -->
	<bean id="personAction" class="com.spring.actions.PersonAction" scope="prototype">
		<property name="personService" ref="personService"></property>
	</bean>
</beans>


struts.xml

<?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>
    <constant name="struts.enable.DynamicMethodInvocation" value="http://www.mamicode.com/false" />
    <constant name="struts.devMode" value="http://www.mamicode.com/true" />
    
    <package name="default" namespace="/" extends="struts-default">
    	<!-- Spring整合Struts2时,在Struts2中配置的Spring的Action的class需要只想IOC容器中该bean的id -->
		<action name="personSave" class="personAction">
			<result>success.jsp</result>
		</action>
    </package>
</struts>


web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>Spring_08</display-name>
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	<!-- 配置Spring配置文件的名称和位置 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
	</context-param>
	<!-- 启动IOC容器的ServletContextListner -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<!-- 配置Struts2的filter -->
	<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>
</web-app>


测试页

<a href="http://www.mamicode.com/personSave.action">personSave.action</a>


http://yunpan.cn/cgJjBqGcwuevq  提取码 2500


本文出自 “阿凡达” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/1558569

Spring4学习笔记-Spring4整合Struts2