一、相应的spring的jar
Struts2-spring-plugin.jar
spring.jar
1、了解Struts2-spring-plugin.jar包中的struts-plugin.xml配置文件
<struts>
<bean type="com.opensymphony.xwork2.ObjectFactory" name="spring" class="org.apache.struts2.spring.StrutsSpringObjectFactory" />
<!-- Make the Spring object factory the automatic default -->
<constant name="struts.objectFactory" value="spring" />
<package name="spring-default">
<interceptors>
<interceptor name="autowiring" class="com.opensymphony.xwork2.spring.interceptor.ActionAutowiringInterceptor"/>
<interceptor name="sessionAutowiring" class="org.apache.struts2.spring.interceptor.SessionContextAutowiringInterceptor"/>
</interceptors>
</package>
</struts>
2、按如下步骤
1)将Struts2-spring-plugin.jar拷贝到lib下
2)增加配置文件applicationContex.xml(可以如下获得:利用myeclipse自动增加的功能-->在工程上点击右键选择“Add Spring Capabilities”,然后选择spring2.0选择spring2.0 core Libraries,选择 Copy check Library contents to project folder)
3、官方参考资料
http://struts.apache.org/2.1.6/index.html页面上的plugin图标
进入到http://cwiki.apache.org/S2PLUGINS/spring-plugin.html
http://struts.apache.org/2.x/docs/spring-plugin.html
二、示例
1、建立业务逻辑包service和包serviceImp
他们分别内涵LoginService和LoginServiceImp
package com.test.service;
public interface LoginService
{
public boolean isLogin(String username, String password);
}
package com.test.service.impl;
import com.test.service.LoginService;
public class LoginServiceImpl implements LoginService
{
public boolean isLogin(String username, String password)
{
if ("hello".equals(username) && "world".equals(password))
{
return true;
}
return false;
}
}
2、LoginAction.java
(该类加入了LoginService接口,通过spring来注入该服务,)
import com.opensymphony.xwork2.ActionSupport;
import com.test.service.LoginService;
public class LoginAction extends ActionSupport
{
private String username;
private String password;
private LoginService loginService;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public void setLoginService(LoginService loginService)
{
this.loginService = loginService;
}
@SuppressWarnings("unchecked")
public String execute() throws Exception
{
if (loginService.isLogin(username, password))
{
return SUCCESS;
}
else
{
return INPUT;
}
}
}
3、spring配置文件
(下面scope="prototype",表示请求一个实例化一个,非单例的,线程安全的!)
<?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="loginService" class="com.test.service.impl.LoginServiceImpl"></bean>
<bean id="loginAction" class="com.test.action.LoginAction" scope="prototype">
<property name="loginService">
<ref local="loginService"/>
</property>
</bean>
</beans>
4、在原来的struts.xml文件修改(此处的class名字"loginAction"需要和上面spring配置中的id的"loginAction"一致)
<action name="login" class="loginAction">
<result name="success">/result.jsp</result>
<result name="input">/login2.jsp</result>
</action>
5、让spring容器在启动时加载进来
在web.xml可以通过servert或监听器两种方式来加载
现在的servert2.4以后版本一般可以用监听器比较简单:<listener>
在web.xml文件中加入以下内容:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
这样系统就会默认加载web-INF下 的applicationContext.xml文件了
但是如果spring有多个配置文件需要加载
处理方法:增加以下配置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>多个配置文件名(中间用逗号隔开)</param-value>
</context-param>
6、此时可以看到struts2的加载顺序,他会先加载strust-defualt.xml,接着会加载struts-plugin.xml,组后加载struct.xml
后加载的配置信息可以覆盖前面加载的配置信息。
分享到:
相关推荐
Struts2+Hibernate+Spring三大框架整合jar包
使用strut2+spring+jdbctemplate+ajax(jquery,ajaxanywhere)去实现的一个简易用户管理,和留言功能
此系统虽然简单,但涉及的技术全面,struts,spring,hibernate,所有的方面,还具有分布功能!!!!!!!
java+sturt+Hibernate
spring,sturt2,linux,工作流
本项目采用的是sturt2框架开发的、其中有分页功能和基本的几个增删查改功能!分页功能有点bug还未完善…
Sturt2多/单文件上传带进度条,可上传至服务器文件夹
毕业设计-物流管理系统,开发工具是MyEclipse+tomcat+Mysql数据库等。语言是JAVA。结合了AJAX、JSTL、等。运用流行的三大开发框架。Sturt +Spring+hibernate等。.
采购管理信息系统,弄了一周的小系统,开发工具是MyEclipse+tomcat+Mysql数据库等。语言是JAVA。结合了AJAX、JSTL、等。运用流行的三大开发框架。Sturt +Spring+hibernate等。
sturt classsturt classsturt classsturt classsturt class
这是一个完整的例子,完全可以跑通,怎样使用及修改我写将这些说明写在一个文档里面
sturts1 spring hibernate开发的详细介绍sturts1 spring hibernate开发的详细介绍sturts1 spring hibernate开发的详细介绍
sturt标签学习select logic 等等
用于帮助刚开始接触struts2上传的朋友
hibernate+Sturt,shibernate+Sturts,hibernate+Sturts,hibernate+Sturts,hibernate+Sturts
该项目采用的是典型的struts2框架,在此框架之上实现了多文件上传的功能。
完整的增删改操作,适合刚开始学习sturts的朋友。
一个实用SSH框架,用Spring来管理hibernate,可以在上面扩展变成自己的框架!
struts+hibernet用户登录注册,用户名跟密码从JSP页面传输到服务器上,接收请求的是ActionServlet,ActionServlet接收到请求后,会查找Struts-config.xml文件来确定服务器上是否有用户请求的操作,此处用户请求的操作...
关于Struts2 工作中相对应的需要的技术点的总结!是新手必备的Sturt2快速上手的很好的一个文档!