posts - 0,  comments - 20,  trackbacks - 0
  <Context path="/test" docBase="D:\workspace\DocMIS\WebRoot" reloadable="true" >
   <Resource
    name="jdbc/mysql"
    type="javax.sql.DataSource"
    username="test"
    password="test"
    driverClassName="org.gjt.mm.mysql.Driver"
    maxIdle="2"
    maxWait="5000"
    url="jdbc:mysql://localhost:3306/test"
    maxActive="4" />
  </Context>

连接池配置需要在应用部署文件的<Context>节点内添加<Resource>描述。

对于Tomcat5和Tomcat6,官方建议不要将<Context>的配置直接写在server.xml中,使用单独的xml文件部署应用的方法请参见:http://www.blogjava.net/fastunit/archive/2008/05/22/202112.html

本文的测试环境:
应用程序根路径:D:/fastunit
数据库:oracle9i

一、拷贝数据库驱动jar文件放到Tomcat下

1、Tomcat4/Tomcat5:放到/common/lib/下
2、Tomcat6:放到/lib/下
对于oralce9i,需要拷贝的jar文件位于/oralce安装路径/ora92/jdbc/lib/classes12.jar

二、Tomcat连接池配置

设置参数时,driverClassName、url、username、password的值根据实际情况设定。
本例将jndi名称设为“dstest”。

1、Tomcat4

<Context path="" docBase="D:/fastunit" privileged="true">
  
<Resource name="dstest" auth="Container" type="javax.sql.DataSource"/>
  
<ResourceParams name="dstest">
    
<parameter>
      
<name>factory</name>
      
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    
</parameter>
    
<parameter>
      
<name>maxActive</name>
      
<value>100</value>
    
</parameter>
    
<parameter>
      
<name>maxIdle</name>
      
<value>30</value>
    
</parameter>
    
<parameter>
      
<name>maxWait</name>
      
<value>10000</value>
    
</parameter>
    
<parameter>
     
<name>username</name>
     
<value>app</value>
    
</parameter>
    
<parameter>
     
<name>password</name>
     
<value>app</value>
    
</parameter>
    
<parameter>
       
<name>driverClassName</name>
       
<value>oracle.jdbc.driver.OracleDriver</value>
    
</parameter>
    
<parameter>
      
<name>url</name>
      
<value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value>
    
</parameter>
  
</ResourceParams>
</Context>

2、Tomcat5/Tomcat6

<Context path="" docBase="D:/fastunit" privileged="true">
 
<Resource name="dstest" auth="Container" type="javax.sql.DataSource"
               maxActive
="100" maxIdle="30" maxWait="10000"
               username
="app" password="app" driverClassName="oracle.jdbc.driver.OracleDriver"
               url
="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/>
</Context>

 三、连接池测试

下面的jsp文件中ctx.lookup("java:comp/env/dstest"),“dstest”对应为<Resource>节点的“name”属性值。

<%@ page import="java.sql.*,javax.sql.*,javax.naming.*" %>
<%
  Connection conn 
= null;
  try{
    Context ctx 
= new InitialContext(); 
    DataSource ds 
= (DataSource)ctx.lookup("java:comp/env/dstest");
    conn 
= ds.getConnection();
    out.print(
"connection pool connected !");   
  }catch (Exception e) {
    out.print(e.getMessage());
    e.printStackTrace();
  }finally {
    
if(conn!=null)  conn.close();
  }
%>

四、<Resource>节点参数说明

1、name:数据源名称
2、driverClassName:JDBC驱动的类路径
3、url:数据库连接URL
4、username/password:数据库的用户名和密码
5、其他参数,请参考相应版本的官方说明:
http://tomcat.apache.org/tomcat-4.1-doc/jndi-datasource-examples-howto.html
http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html


posted on 2008-09-02 09:50 Documents 阅读(441) 评论(0)  编辑  收藏 所属分类: Tomcat

只有注册用户登录后才能发表评论。


网站导航:
 
<2024年3月>
252627282912
3456789
10111213141516
17181920212223
24252627282930
31123456

留言簿

文章分类

文章档案

J2EE

搜索

  •  

最新评论