IT Notes‎ > ‎Java‎ > ‎Java Web / Java EE‎ > ‎Tips of Java Web / EE‎ > ‎

Datasource configuration for Tomcat6

使用Tomcat6的Java EE项目的数据源配置



以下头三步是配置的方式,最后一部分是说明在程序中如何使用配置好的数据源。

添加数据库驱动

把jdbc driver包放到{Tomcat home}/lib目录下 。
我用的是mysql,最新驱动是mysql-connector-java-5.1.6-bin.jar,我把它复制到了C:\apache-tomcat-6.0.16\lib

写context.xml配置文件

在项目的META-INF目录下建一名为context.xml的文档,我本机的文件(已经添加到本页附件)内容如下:

<?xml version="1.0" encoding="UTF-8"?>

    <!--

       name 表示指定的jndi名称

       auth 表示认证方式,一般为Container

       type 表示数据源床型,使用标准的javax.sql.DataSource

       maxActive 表示连接池当中最大的数据库连接

       maxIdle 表示最大的空闲连接数

       maxWait 当池的数据库连接已经被占用的时候,最大等待时间

       logAbandoned 表示被丢弃的数据库连接是否做记录,以便跟踪

       username 表示数据库用户名

       password 表示数据库用户的密码

       driverClassName 表示JDBC DRIVER

       url 表示数据库URL地址

    -->

<Context>

    <Resource

       name="jdbc/cyMysql"

       auth="Container"

       type="javax.sql.DataSource"

       maxActive="50"

       maxIdle="30"

       maxWait="10000"

       logAbandoned="true"

       username="dev001"

       password="dev001"

       driverClassName="com.mysql.jdbc.Driver"

       url="jdbc:mysql://127.0.0.1:3306/jspdev" />

</Context>



配置web.xml

在WEB-INF/web.xml中添加如下配置信息resource-ref作为web-app的根元素

    <resource-ref>

       <description>DB Connection</description>

       <res-ref-name>jdbc/cyMysql</res-ref-name>

       <res-type>javax.sql.DataSource</res-type>

       <res-auth>Container</res-auth>

    </resource-ref>


调用数据源

配置完毕,程序中调用方式,如下:

        Context initContext = new InitialContext();

        Context envContext = (Context) initContext.lookup("java:comp/env");

        DataSource ds = (DataSource) envContext.lookup("jdbc/cyMysql");

        Connection conn = ds.getConnection();




参考
ċ
context.xml
(1k)
Iridium Cao,
Aug 7, 2008, 6:29 PM
Comments