tomcat5.0与tomcat5.5的数据库连接池jndi配置区别
2006-12-13 20:20
736 查看
tomcat5.0与tomcat5.5的数据库连接池jndi配置区别
在tomcat5.5版本以前,可以说jndi配置相对是比较复杂的,而且据网友说用tomcat5.0的控制台配置数据库连接池经常有问题,而且文档写得又不详细。
tomcat5.5出来后,jndi的配置方法是大大地节省,而且很简洁,个人觉得比以前的版本好很多。这里大概给出一个配置例子。tomcat数据库连接池jndi配置有两种,一种是全局的,一种是context的,下面主要是讲全局的,并且以一个实例jdbc/byisdb为例子
一、tomcat5.0配置方法
1、首先在server.xml里面配置,找到下面的配置
<!-- Global JNDI resources -->
<GlobalNamingResources>
</GlobalNamingResources>
2、在里面增加一个Resource
<Resource name="jdbc/byisdb"
auth="Container"
type="javax.sql.DataSource"/>
3、在下面增加属性
<ResourceParams name="jdbc/byisdb">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<!-- Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<!-- Maximum number of idle dB connections to retain in pool.
Set to -1 for no limit. See also the DBCP documentation on this
and the minEvictableIdleTimeMillis configuration parameter.
-->
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<!-- Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<!-- MySQL dB username and password for dB connections -->
<parameter>
<name>username</name>
<value>una_oa</value>
</parameter>
<parameter>
<name>password</name>
<value>una_oa</value>
</parameter>
<!-- Class name for the old mm.mysql JDBC driver - uncomment this entry and comment next
if you want to use this driver - we recommend using Connector/J though
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
-->
<!-- Class name for the official MySQL Connector/J driver -->
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<!-- The JDBC connection url for connecting to your MySQL dB.
The autoReconnect=true argument to the url makes sure that the
mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
connection. mysqld by default closes idle connections after 8 hours.
-->
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.1.210:1521:byisdb</value>
</parameter>
</ResourceParams>
4、在你的应用的web.xml里面增加
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/byisdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
OK,到此配置完毕,可以用下面的几段代码进行测试
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/byisdb");
Connection conn = ds.getConnection();
out.println("conn is:"+conn);
二、tomcat5.5配置
1、打开conf/context.xml里面
添加下面的配置
<Resource name="jdbc/byisdb" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.1.210:1521:byisdb" username="una_oa" password="una_oa" maxActive="20" maxIdle="10" maxWait="10000"/>
2在你的应用的web.xml里面增加
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/byisdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
同样,可以用上面的代码进行测试。
在tomcat5.5版本以前,可以说jndi配置相对是比较复杂的,而且据网友说用tomcat5.0的控制台配置数据库连接池经常有问题,而且文档写得又不详细。
tomcat5.5出来后,jndi的配置方法是大大地节省,而且很简洁,个人觉得比以前的版本好很多。这里大概给出一个配置例子。tomcat数据库连接池jndi配置有两种,一种是全局的,一种是context的,下面主要是讲全局的,并且以一个实例jdbc/byisdb为例子
一、tomcat5.0配置方法
1、首先在server.xml里面配置,找到下面的配置
<!-- Global JNDI resources -->
<GlobalNamingResources>
</GlobalNamingResources>
2、在里面增加一个Resource
<Resource name="jdbc/byisdb"
auth="Container"
type="javax.sql.DataSource"/>
3、在下面增加属性
<ResourceParams name="jdbc/byisdb">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<!-- Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<!-- Maximum number of idle dB connections to retain in pool.
Set to -1 for no limit. See also the DBCP documentation on this
and the minEvictableIdleTimeMillis configuration parameter.
-->
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<!-- Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<!-- MySQL dB username and password for dB connections -->
<parameter>
<name>username</name>
<value>una_oa</value>
</parameter>
<parameter>
<name>password</name>
<value>una_oa</value>
</parameter>
<!-- Class name for the old mm.mysql JDBC driver - uncomment this entry and comment next
if you want to use this driver - we recommend using Connector/J though
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
-->
<!-- Class name for the official MySQL Connector/J driver -->
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<!-- The JDBC connection url for connecting to your MySQL dB.
The autoReconnect=true argument to the url makes sure that the
mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
connection. mysqld by default closes idle connections after 8 hours.
-->
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.1.210:1521:byisdb</value>
</parameter>
</ResourceParams>
4、在你的应用的web.xml里面增加
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/byisdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
OK,到此配置完毕,可以用下面的几段代码进行测试
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/byisdb");
Connection conn = ds.getConnection();
out.println("conn is:"+conn);
二、tomcat5.5配置
1、打开conf/context.xml里面
添加下面的配置
<Resource name="jdbc/byisdb" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.1.210:1521:byisdb" username="una_oa" password="una_oa" maxActive="20" maxIdle="10" maxWait="10000"/>
2在你的应用的web.xml里面增加
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/byisdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
同样,可以用上面的代码进行测试。
相关文章推荐
- Tomcat5.5.x的数据库连接池的配置与Tomcat5.0.X不同
- tomcat5.0与tomcat5.5连接池数据源的配置区别
- Tomcat5.5 配置数据库连接池【MySQL+Tomcat-0.2】
- Tomcat5.0-5.5连接池配置指南
- Tomcat5.0-5.5连接池配置指南
- Tomcat5.5 配置数据库连接池【MySQL+Tomcat-0.1】
- Tomcat5.0-5.5连接池配置指南
- Tomcat5.5中数据库连接池的配置
- tomcat5.0和tomcat5.5配置问题,二者是有区别的
- Tomcat5.5 Hibernate3 配置数据库连接池2
- eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
- Tomcat jndi 数据库配置 连接池配置
- Tomcat jndi 数据库配置 连接池配置
- (转)Tomcat5.0-5.5连接池配置指南
- Tomcat5.0-5.5连接池配置指南
- JNDI配置Tomcat的数据库连接池
- (转)Tomcat5.0-5.5连接池配置指南
- Tomcat jndi 数据库配置 连接池配置
- Tomcat5.0-5.5连接池配置指南
- (转)Tomcat5.0-5.5连接池配置指南