原文引用:http://www.arm4u.com/read.php?tid=104
准备工作:之前(http://www.arm4u.com/read.php?tid=96)我们已经下载了Struts2.2.3的相关jar包,同时实现了一个简单的功能。那么如何将Struts2集成Spring呢?现在Spring的最新版本已经到了3.1.0(下载地址:http://www.springsource.org/),且Spring自3.0以后不再提供完整发布模块的单个jar包,即提供模块化的jar包,需要自行组装。
步骤1:将jar包复制到工程WEB-INF/lib目录下。包括Struts2提供的Spring插件struts2-spring-plugin-2.2.3.jar和spring的相关jar包(原本集成Struts2需要的jar包也必须导入)。
Spring3.1部分jar包简介,也是以下功能实现必备的jar包。
org.springframework.web--------------------SpringWeb下的工具包
org.springframework.context----------------Spring提供在基础IoC功能上的扩展服务,此外还提供许多企业级服务的支持,如邮件服务、任务调度、JNDI定位、EJB集成、远程访问、缓存以及各种视图层框架的封装等
org.springframework.beans------------------SpringIoC(依赖注入)的基础实现
org.springframework.core-------------------Spring3.0的核心工具包
org.springframework.asm--------------------Spring独立的asm程序,相遇Spring2.5.6的时候需要asmJar 包.3.0开始提供他自己独立的asmJar
org.springframework.expression-------------Spring表达式语言
<!-- 配置spring监听器 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
<?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-3.1.xsd"> <bean id="userDao" class="com.tong.struts2.persistence.dao.UserDao" /> </beans>
public class RegisterAction extends ActionSupport { private UserDao userDao; … … public void setUserDao(UserDao userDao) { this.userDao = userDao; } }
下面提供了代码示例,使用JNDI连接池,配置见META-INF/context.xml,可根据具体情况进行修改。