Tomcat6中配置使用数据源有以下几种方式,其配置步骤如下:
1、将jdbc驱动jar包复制到tomcat\lib目录下。
2、在web应用工程的web.xml文件中添加如下内容:
在以往的tomcat当中需要在web.xml指定相应的resource,在tomcat5.5以后的版本可以不写,但建议还是配置。
<resource-ref> <description>JNDI DataSource</description> <res-ref-name>jndi/webtest</res-ref-name> <res-ref-type>javax.sql.DataSource</res-ref-type> <res-auth>Container</res-auth> </resource-ref>
方式一:
通过该方式配置的数据源是全局性的,即tomcat服务器下的所有应用都可以使用该数据源。
在tomcat\conf\context.xml文件中添加以下内容:
<Context> <Resource name="jndi/webtest" auth="Container" type="javax.sql.DataSource" logAbandoned="true" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:ORCL" username="webtest" password="123456" maxActive="20" maxIdle="3" maxWait="10000" /> </Context> <!-- 其中: name 表示指定的jndi名称 auth 表示认证方式,一般为Container type 表示数据源类型,使用标准的javax.sql.DataSource logAbandoned 表示被丢弃的数据库连接是否做记录,以便跟踪 username 表示数据库用户名 password 表示数据库用户密码 driverClassName 表示JDBC DRIVER url 表示数据库URL地址 maxActive 表示连接池当中最大的数据库连接 maxIdle 表示最大的空闲连接数 maxWait 当池的数据库连接已经被占用的时候,最大等待时间 -->
方式二:
该方式配置的数据源是某个应用专用的。
在tomcat\conf\Catalina\localhost目录下新建一个与应用名字相同的xml文件。比如应用名为webtest,那么xml文件名就为webtest.xml。文件内容如下:
<Context> <Resource name="jndi/webtest" auth="Container" type="javax.sql.DataSource" logAbandoned="true" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:ORCL" username="webtest" password="123456" maxActive="20" maxIdle="3" maxWait="10000" /> </Context>
方式三:
1、在web应用工程的WebRoot目录下,新建一个名为 META_INF 的文件夹(如果不存在,注意目录名称大写)
2、在META_INF文件夹中新建一个context.xml文件,用来存放数据源的信息
3、在context.xml文件中配置数据源如下:
文件内容与方式二的一样
当Tomcat启动时,会在tomcat\conf\Catalina\localhost目录下自动生成名字与应用名一样的xml文件,文件内容与上述context.xml文件的一样。所以说,方式三与方式二是一样的。