Struts2.1+Spring2.5+tomcat6.0连接池整合过程详解
2010-11-30 21:00
615 查看
网上有N多个版本的整合方案,其实都是大同小异,记录我的整合过程,主要想记录下整合时遇到的问题,方便将来查找,有其他人遇到我同样的问题,可以一起探讨。不扯闲话了!
整合环境: jdk6.0 + myeclipse7.0 + struts-2.1.18 + Spring2.5 + Tomcat6.0
整合方案:struts2.1+spring2.5+tomcat6.0连接池
1、引入jar文件,这些应该是整合所需的最基本Jar包,如图:
2、修改web.xml配置文件
这个配置文件非常重要!为了将struts的配置文件移动到自定义目录下,费了一番功夫,路径必须为“../conf/struts.xml”,网上有说“/WEB-INF/conf/struts.xml”的,但经过我在本机环境的反复测试发现未能成功,纳闷。。。为啥spring的配置文件能够找到呢?
3、增加struts2.1配置文件。这里我以struts.xml作为基本配置文件,在其中引入各模块配置文件。如:<include file="../conf/am/struts-am.xml" /> 在struts-am.xml中配置实际的action信息。
struts.xml配置信息:
配置文件中同时增加了spring管理struts2的action。
struts-am.xml配置信息:
3、增加spring配置文件。打算各个模块,不同类(action,BO,DAO)有各自的配置文件。如下:
这里只演示dataAccessContext.xml的配置信息。如下:
4、配置tomcat连接池
经测试,本方法使用本机tomcat5.5和tomcat6.0
在WebRoot/META-INF/中创建context.xml
这个为了方便大家copy,直接贴纯文本了啊!!!
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!-- removeAbandonedTimeout多久以后被回收 单位为秒-->
<!-- removeAbandoned回收没释放的链接-->
<!-- logAbandoned日志打印没有回收的链接栈信息-->
<Resource
name="jdbc/webwork"
type="javax.sql.DataSource"
maxActive="4"
maxIdle="2"
username="work"
maxWait="5000"
driverClassName="com.mysql.jdbc.Driver"
password="admin"
url="jdbc:mysql://localhost:3306/webwork"
removeAbandoned="true"
removeAbandonedTimeout="300"
logAbandoned="true"/>
</Context>
配置内容就不说了,不明白的google一下!
将对应数据库jar包拷贝到tomcat的lib文件夹中!
基本就这样了啊!可以测试了!
本文出自 “学习之路” 博客,请务必保留此出处http://tsun424.blog.51cto.com/1048838/437752
整合环境: jdk6.0 + myeclipse7.0 + struts-2.1.18 + Spring2.5 + Tomcat6.0
整合方案:struts2.1+spring2.5+tomcat6.0连接池
1、引入jar文件,这些应该是整合所需的最基本Jar包,如图:
2、修改web.xml配置文件
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" 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_2_5.xsd"> <!-- Spring配置 start --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/conf/am/dataAccessContext-AM.xml, /WEB-INF/conf/am/applicationContext-AM.xml, /WEB-INF/conf/am/actionContext-AM.xml </param-value> <!--可载入多个配置文件用逗号做分隔符 --> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- Spring配置 end--> <!-- Struts 2 配置 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> <init-param> <param-name>config</param-name> <param-value>struts-default.xml,struts-plugin.xml,../conf/struts.xml</param-value> </init-param> </filter> <!-- Struts 2 配置 --> <!-- 字符编码过滤器 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <resource-ref> <description>test dataSource</description> <res-ref-name>jdbc/webwork</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
这个配置文件非常重要!为了将struts的配置文件移动到自定义目录下,费了一番功夫,路径必须为“../conf/struts.xml”,网上有说“/WEB-INF/conf/struts.xml”的,但经过我在本机环境的反复测试发现未能成功,纳闷。。。为啥spring的配置文件能够找到呢?
3、增加struts2.1配置文件。这里我以struts.xml作为基本配置文件,在其中引入各模块配置文件。如:<include file="../conf/am/struts-am.xml" /> 在struts-am.xml中配置实际的action信息。
struts.xml配置信息:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <!-- 指定由spring负责action对象的创建 --> <constant name="struts.objectFactory" value="spring"/> <!-- 默认编码集 --> <constant name="struts.i18n.encoding" value="UTF-8" /> <!-- 配置文件修改后自动加载 --> <constant name="struts.configuration.xml" value="true" /> <include file="../conf/am/struts-am.xml" /> </struts>
配置文件中同时增加了spring管理struts2的action。
struts-am.xml配置信息:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="am" namespace="/am" extends="struts-default"> <action name="loginAction_*" class="loginAction" method="{1}" > <result name ="success">/am/login/main.jsp</result> </action> </package> </struts>
3、增加spring配置文件。打算各个模块,不同类(action,BO,DAO)有各自的配置文件。如下:
这里只演示dataAccessContext.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.5.xsd"> <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>java:comp/env/jdbc/webwork</value> </property> </bean> <bean id="uuidGenerator" class="com.tsun.utils.IdGenerator"></bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"> <ref bean = "dataSource" /> </property> </bean> <bean id="loginDAO" class="com.tsun.am.login.dao.LoginDAOImpl"> <property name="jdbcTemplate"> <ref bean="jdbcTemplate"/> </property> </bean> </beans>
4、配置tomcat连接池
经测试,本方法使用本机tomcat5.5和tomcat6.0
在WebRoot/META-INF/中创建context.xml
这个为了方便大家copy,直接贴纯文本了啊!!!
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!-- removeAbandonedTimeout多久以后被回收 单位为秒-->
<!-- removeAbandoned回收没释放的链接-->
<!-- logAbandoned日志打印没有回收的链接栈信息-->
<Resource
name="jdbc/webwork"
type="javax.sql.DataSource"
maxActive="4"
maxIdle="2"
username="work"
maxWait="5000"
driverClassName="com.mysql.jdbc.Driver"
password="admin"
url="jdbc:mysql://localhost:3306/webwork"
removeAbandoned="true"
removeAbandonedTimeout="300"
logAbandoned="true"/>
</Context>
配置内容就不说了,不明白的google一下!
将对应数据库jar包拷贝到tomcat的lib文件夹中!
基本就这样了啊!可以测试了!
本文出自 “学习之路” 博客,请务必保留此出处http://tsun424.blog.51cto.com/1048838/437752
相关文章推荐
- OA学习笔记-005-Spring2.5与struts2.1整合
- 框架整合之--------spring2.5+struts2.1+hibernate3.6
- 基于Annotation的Struts2.1+Hibernate3.3+Spring2.5整合开发
- struts2.1+spring2.5+hibernate3.3整合之第一步(spring2.5+hibernate3.3)
- Sruts2.1+JPA(Hibernate3.0)+Spring2.5整合详解
- Spring2.5、Struts2.1、Hibernate3.2、sitemesh、freemarker整合开发常见问题及解决方案
- 整合Spring2.5+Struts2.1+Hibernate3.2
- (绝对有效)sqlserver2000链接proxool连接池,终于配置出spring整合struts,hibernate annotation(pool数据池,sqlserver2000数据库)
- Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发(1)
- 传智Struts2笔记(15)Struts2+Spring2.5+Hibernate3.3整合开发
- Spring2.5+Struts1.3.8+JPA(Hibernate实现)整合之四
- Spring整合Struts详解
- 基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (1)
- 整合Struts2+Spring2.5+Hibernate3.5
- 基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (2)
- Struts2+Hibernate3.3+Spring2.5整合实现尚学堂OA
- struts-2.3.1+spring-framework-3.2.2+hibernate-4.1.1整合历程<第二部分>(详解)
- Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架整合小结
- 基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (2)
- MyEclipse-10.0下Struts2.1+Spring3.0+Hibernate3.3整合过程