Tomcat 5.5连接池配置
Tomcat作为测试服务器肯定是众多朋友的首选,但是当我们从Tomcat5.0.x升级到tomcat5.5.x的时候,出现了一个让人痛苦的问题,就是他的数据库连接池直接移植过来后会出现Cannot create JDBC driver of class '' for connect URL 'null' 这种让人摸不着头脑的问题,明明数据库的驱动程序已经放在了 ${Tomcat}\common\lib 下面了(${Tomcat}是tomcat的安装目录),原来Tomcat5.5.x已经变换了一下配置文件的方式。他改为了如下的方式:下面给出了一个Oracle的例子。
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
由于Tomcat连接池涉及到全局的和私有的2种,下面给出2种配置的区别所在,首先声明一点,在这里我们所采用的部署描述是放在${Tomcat}\conf\Catalina\localhost\*.xml ,后面的XML文件就是部署描述文件,你可以进行自定义,下面给出一个简单的例子:
<Context
docBase="D:/project/RoadOfSpring/RoadOfSpring" context="/RoadOfSpring">
</Context>
这样你的工程就部署在Tomcat下了J
言归正传,配置连接池的例子:
例一:全局连接池:
在${Tomcat}\conf 下的Server.xml 的<GlobalNamingResources> </GlobalNamingResources>节点中间加上配置:
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
同时,你还要在你自己的部署文件里(即上面提到的)添加如下片断
<Resource Linkname="jdbc/OraConPool" global="jdbc/OraConPool"
type="javax.sql.DataSourcer"/>
这样我们在工程的使用中就可以在Spring文件中直接使用这个JNDI了,呵呵,WEB.xml文件中的配置就可以省掉拉!
例二:全局连接池:
有些时候我们不想使用全局的连接池,也可以,对上面的例子进行很简单的改造,我们把定义在Server.xml 的<GlobalNamingResources> </GlobalNamingResources>节点里的连接池定义放到部署描述文件里去,此时,我们描述文件里的引用声明就可以去掉了,变成如下给出的一个详细例子:
<Context
docBase="D:/project/RoadOfSpring/RoadOfSpring" context="/RoadOfSpring">
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
<!—如此定义便可省略此句 <ResourceLink name="jdbc/OraConPool" global="jdbc/OraConPool" type="javax.sql.DataSourcer"/>-->
</Context>
最后罗索一下,spring中引用如上的连接池定义:
<bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/OraConPool</value>
</property>
</bean>
好了,我想应该比较清楚了。恩,我想你一定会配置成功J
Tomcat作为测试服务器肯定是众多朋友的首选,但是当我们从Tomcat5.0.x升级到tomcat5.5.x的时候,出现了一个让人痛苦的问题,就是他的数据库连接池直接移植过来后会出现Cannot create JDBC driver of class '' for connect URL 'null' 这种让人摸不着头脑的问题,明明数据库的驱动程序已经放在了 ${Tomcat}\common\lib 下面了(${Tomcat}是tomcat的安装目录),原来Tomcat5.5.x已经变换了一下配置文件的方式。他改为了如下的方式:下面给出了一个Oracle的例子。
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
由于Tomcat连接池涉及到全局的和私有的2种,下面给出2种配置的区别所在,首先声明一点,在这里我们所采用的部署描述是放在${Tomcat}\conf\Catalina\localhost\*.xml ,后面的XML文件就是部署描述文件,你可以进行自定义,下面给出一个简单的例子:
<Context
docBase="D:/project/RoadOfSpring/RoadOfSpring" context="/RoadOfSpring">
</Context>
这样你的工程就部署在Tomcat下了J
言归正传,配置连接池的例子:
例一:全局连接池:
在${Tomcat}\conf 下的Server.xml 的<GlobalNamingResources> </GlobalNamingResources>节点中间加上配置:
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
同时,你还要在你自己的部署文件里(即上面提到的)添加如下片断
<Resource Linkname="jdbc/OraConPool" global="jdbc/OraConPool"
type="javax.sql.DataSourcer"/>
这样我们在工程的使用中就可以在Spring文件中直接使用这个JNDI了,呵呵,WEB.xml文件中的配置就可以省掉拉!
例二:全局连接池:
有些时候我们不想使用全局的连接池,也可以,对上面的例子进行很简单的改造,我们把定义在Server.xml 的<GlobalNamingResources> </GlobalNamingResources>节点里的连接池定义放到部署描述文件里去,此时,我们描述文件里的引用声明就可以去掉了,变成如下给出的一个详细例子:
<Context
docBase="D:/project/RoadOfSpring/RoadOfSpring" context="/RoadOfSpring">
<Resource
name="jdbc/OraConPool"
type="javax.sql.DataSource"
password="springdev"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="springdev"
url="jdbc:oracle:thin:@192.168.0.100:1521:ora10"
maxActive="4"/>
<!—如此定义便可省略此句 <ResourceLink name="jdbc/OraConPool" global="jdbc/OraConPool" type="javax.sql.DataSourcer"/>-->
</Context>
最后罗索一下,spring中引用如上的连接池定义:
<bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/OraConPool</value>
</property>
</bean>
好了,我想应该比较清楚了。恩,我想你一定会配置成功J