基本上,将应用移植到Tomcat的最新版本6.0上并不需要做什么额外的工作,但是对于一些比较特殊的环境配置你需要确认以下几个方面:
首先是Java虚拟机的版本,Tomcat 6.0要求至少是5.0或者以上的版本。这点不象Tomcat 5.5可以使用兼容包使之工作在JRE 1.4下。 其次,Tomcat 6.0 修改了目录结构,废弃了原来的common目录,原来common/lib下的所有jar包现在统一到lib目录下,因此你需要将你原来放置在common/lib目录下的扩展jar包拷贝到lib目录下。 另外,Tomcat 6使用org.apache.juli.logging来替换原有的commons-logging,使日志的配置独立于容器之外。 还有一个是跟SSL相关的配置,在Connector配置时需要指定SSLEnabled参数为true才能启用SSL加密传输。 最后一个问题是跟集群有关的,Tomcat 6的集群配置已经做了重构,详细的配置信息请参考Tomcat 6的文挡。 在确认以上的问题不影响你的应用时,尽可以放心将应用放到Tomcat 6下去运行。 Enjoy it ! 咱们在TOMCAT5.0时期在TOMCAT_HOMEconfCatalinalocalhost里的XXX.XML里是这样配置数据库路径的 <?xml version='1.0' encoding='utf-8'?> <Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp"> <Resource auth="Container" name="RedstoneSql" type="javax.sql.DataSource"/> <ResourceParams name="better"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <parameter> <name>url</name> <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms</value> </parameter> <parameter> <name>password</name> <value>sa</value> </parameter> <parameter> <name>maxWait</name> <value>10000</value> </parameter> <parameter> <name>maxActive</name> <value>100</value> </parameter> <parameter> <name>driverClassName</name> <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value> </parameter> <parameter> <name>username</name> <value>sa</value> </parameter> <parameter> <name>maxIdle</name> <value>30</value> </parameter> </ResourceParams> </Context> 按某兄弟的写法 在 <Resource auth="Container" name="better" type="javax.sql.DataSource"/>之前加上 <ResourceLink global="better" name="better" type="javax.sql.DataSource"/>即可搞定 TOMCAT5.5和TOMCAT5.0配置不同 自Tomcat5.5以后,<context>元素的<Resoucepram>元素取消,原参数元素都以Resouce的属性出现. 而应该这样写,顺便把<ResourceLink >也加进去 <?xml version='1.0' encoding='utf-8'?> <Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp"> <Resource auth="Container" name="better" type="javax.sql.DataSource" maxWait="10000" maxIdle="30" maxActive="100" username="sa" password="sa" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms"/> <ResourceLink global="better" name="better" type="javax.sql.DataSource"/> </Context> 解释一下:1.path是指定访问该web应用的URL入口; 2.docBase指定web应用的文件路径,可以是绝对路径,也可以是相对于Host的appBase属性的相对路径; 3.type 4.maxActive是DBCP中处于活动状态的数据库连接的最大数目,取0表示不受限制 5.maxIdle是DBCP中处于空闲状态的数据库连接的最大数目,取0表示不受限制 6.maxWait是是DBCP中的数据库连接处于空闲状态的最长时间(以毫秒为单位)取0表示无限期等待 7.username是数据库登陆名 8.password是数据库登陆口令 9.driverClassName是只定数据库的jdbc驱动程序 10.url是指定连接数据库的URL,testDBCP是我的数据库名。 报 unable to get connection :no suitable driver 是从eclipse中启动tomcat,发现启动时找不到org.apache.commons.dbcp.BasicDataSourceFactory,于是把Resouce元素中的factory="org.apache.commons.dbcp.BasicDataSourceFactory"删去,于是错误解决。 当然不要忘记在web.xml中加 <resource-ref> <description>DB Connection</description> <res-ref-name>better</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> <!--v:3.2--> ![]() |