tomcat5.5连接池配置

    今天试了下tomcat连接池的配置,在网上找的有些资料,总是有问题,不过试了多次终于成功了。以下是我的一点经验,好像也不用在web.xml里面添加什么<resource-ref>

首先记得把数据库驱动放到server/lib/下面,我用的是tomcat5.5和mysql5.0

1,第一种方法:配置全局的连接池,可以由多个工程引用

在server.xml文件中的<GlobalNamingResources>结点下面添加,连接池设置

 <Resource name="jdbc/mysql" type="javax.sql.DataSource"
   password="" driverClassName="org.gjt.mm.mysql.Driver" maxIdle="2"
   maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/test"
   maxActive="4" />

然后在conf/catalina/localhost/下面添加你工程的配置文件,我的工程名叫jndi,配置文件名叫jndi.xml

<Context
    docBase="jndi" path="/jndi"
    privileged="true">
  <ResourceLink name="jdbc/mysql" global="jdbc/mysql" type="javax.sql.DataSource"/>
</Context>

或者直接把上面这段放到server.xml的<host>结点中就不用添加上面的jndi.xml了,

其中<ResourceLink name="jdbc/mysql" global="jdbc/mysql" type="javax.sql.DataSource"/>
这一行别忘了,是引用服务器上全局的连接池资源. 这两种效果是一样的, 现在就可以在web工程中引用连接池来创建数据库接了。

2,第二种方法:配置私有的连接池:只有该工程可以使用
    直接在conf/catalina/localhost/中添加jndi.xml,添加如下内容:

 <Context docBase="jndi" path="/jndi" privileged="true">
  <Resource name="jdbc/mysql" type="javax.sql.DataSource"
   password="" driverClassName="org.gjt.mm.mysql.Driver" maxIde="2"
   maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/test"
   maxActive="4" />
 </Context>

这样就可以了。

3,第三种方法:也是私有的连接池

直接在服务器上添加工程配置和连接池配置,在<host>结点中,添加:

<Context docBase="jndi" path="/jndi" privileged="true">
  <Resource name="jdbc/mysql" type="javax.sql.DataSource"
   password="" driverClassName="org.gjt.mm.mysql.Driver" maxIdle="2"
   maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/test"
   maxActive="4" />
 </Context>

就可以了。

最后是测试代码,必须在web工程中运行。

InitialContext ctx = new InitialContext();
   DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql");
   conn = ds.getConnection();

你可能感兴趣的:(sql,mysql,xml,SQL Server,jdbc)