Tomcat(5.0.X,5.5.X,6.0.X版本)数据源配置

来源:互联网 发布:数据调查公司 编辑:程序博客网 时间:2024/05/16 09:36

 

 

一、   Tomcat5.0.X数据源配置

1、  修改${tomcat_home}/conf/server.xml

<Context path="/JNDITest" docBase="JNDITest" debug="0" crosscontext="true" reloadable="true">

                                   <Resource auth="Container" name="jdbc/oracleData"

                                          type="javax.sql.DataSource" />

                                   <ResourceParams name="jdbc/oracleData">

                                          <parameter>

                                                 <name>factory</name>

                                                 <value>

                                                        org.apache.commons.dbcp.BasicDataSourceFactory

                                                 </value>

                                          </parameter>

                                          <parameter>

                                                 <name>url</name>

                                                 <value>

                                                        jdbc:oracle:thin:@127.0.0.1:1521:ORCL

                                                 </value>

                                          </parameter>

                                          <parameter>

                                                 <name>username</name>

                                                 <value>orcldb</value>

                                          </parameter>

                                          <parameter>

                                                 <name>password</name>

                                                 <value>orcldb</value>

                                          </parameter>

                                          <parameter>

                                                 <name>maxWait</name>

                                                 <value>10000</value>

                                          </parameter>

                                          <parameter>

                                                 <name>maxActive</name>

                                                 <value>100</value>

                                          </parameter>

                                          <parameter>

                                                 <name>driverClassName</name>

                                                 <value>oracle.jdbc.driver.OracleDriver</value>

                                          </parameter>

                                          <parameter>

                                                 <name>maxIdle</name>

                                                 <value>30</value>

                                          </parameter>

                                   </ResourceParams>

                            </Context>

2、修改工程名/WEB-INF/Web.xml文件,在<web-app></web-app>之间增加以下代码:

  <resource-ref>

        <description>Datasource </description>

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

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

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

  </resource-ref>

3、将数据库驱动jar包拷贝到${tomcat_home}/common/lib

4、使用测试代码测试数据库连接池配置是否成功,测试代码见第四部分。

二、   Tomcat5.5.X数据源配置

A. 配置一:直接全局配置

1、修改${tomcat_home}/conf/context.xml文件,在<Context> </Context>之间增加以下代码:

<Resource name="jdbc/oracleData"

       auth="Container"

       type="javax.sql.DataSource"

       maxActive="100"

       maxIdle="30"

       maxWait="10000"

       username="orcldb"

       password="orcldb"

       driverClassName="oracle.jdbc.driver.OracleDriver"

       url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"/>

2、修改工程名/WEB-INF/Web.xml文件,在<web-app></web-app>之间增加以下代码:

  <resource-ref>

        <description>Datasource </description>

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

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

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

  </resource-ref>

3、将数据库驱动jar包拷贝到${tomcat_home}/common/lib

4、使用测试代码测试数据库连接池配置是否成功。

B. 配置二:直接工程配置一

1、${tomcat_home}/conf/Catalina/localhost/下建立一个xml文件,文件名是<yourAppName>.xml,例如我的工程名叫myPro,对应的名字叫myPro.xml。内容如下:

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

 

<Context>

      <Resource name="jdbc/oracleData"

      auth="Container"

      type="javax.sql.DataSource"

      maxActive="100"

      maxIdle="30"

      maxWait="10000"

      username="orcldb"

      password="orcldb"

      driverClassName="oracle.jdbc.driver.OracleDriver"

      url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"/>

</Context>

2、配置一:直接全局配置步骤2

3、配置一:直接全局配置步骤3

4、配置一:直接全局配置步骤4

C. 配置三:直接工程配置二

1、${tomcat_home}/webapps/工程名/META-INF/下创建context.xml文件,内容如下:

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

 

<Context>

      <Resource name="jdbc/oracleData"

      auth="Container"

      type="javax.sql.DataSource"

      maxActive="100"

      maxIdle="30"

      maxWait="10000"

      username="orcldb"

      password="orcldb"

      driverClassName="oracle.jdbc.driver.OracleDriver"

      url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"/>

</Context>

2、配置一:直接全局配置步骤2

3、配置一:直接全局配置步骤3

4、配置一:直接全局配置步骤4

D. 配置四:全局映射配置一

1、${tomcat_home}/conf/server.xml<GlobalNamingResources>节点中加入以下内容:

      <Resource name="jdbc/oracleData"

      auth="Container"

      type="javax.sql.DataSource"

      maxActive="100"

      maxIdle="30"

      maxWait="10000"

      username="orcldb"

      password="orcldb"

      driverClassName="oracle.jdbc.driver.OracleDriver"

      url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"/>

2、${tomcat_home}/conf/Catalina/localhost/下建立一个xml文件,文件名是<yourAppName>.xml例如我的工程名叫myPro,对应的名字叫myPro.xml加入如下内容:

<Context>

<ResourceLink global=" jdbc/oracleData " name=" jdbc/oracleData " type="javax.sql.DataSource"/>

</Context>

3、配置一:直接全局配置步骤2

4、配置一:直接全局配置步骤3

5、配置一:直接全局配置步骤4

E. 配置四:全局映射配置二

1、同配置四全局映射配置一步骤1

2、${tomcat_home}/webapps/工程名/META-INF/context.xmlContext中增加配置四全局映射配置一步骤1中的内容,如果没有context.xml文件创建该文件即可。

3、配置一:直接全局配置步骤2

4、配置一:直接全局配置步骤3

5、配置一:直接全局配置步骤4

F. 配置四:全局映射配置三

1、同配置四全局映射配置一:直接全局配置步骤1

2、增加全局映射,在${tomcat_home}/conf/ Catalina/context.xml<Context></context>之间加入以下内容:

<ResourceLink global=" jdbc/oracleData " name=" jdbc/oracleData " type="javax.sql.DataSource"/>

3、配置一:直接全局配置步骤2

4、配置一:直接全局配置步骤3

5、配置一:直接全局配置步骤4

三、   Tomcat6.0.X数据源配置

Tomcat5.5.X配置方式相同,需要将数据库驱动jar包拷贝到Tomcat6.0.X/lib目录下

四、   数据源测试代码

<%@ page contentType="text/html;charset=utf-8" %>

<%@ page import="javax.sql.*,javax.naming.*,java.sql.*" %>

<%

String lookupName = "java:comp/env/jdbc/oracleData"; //这里的jdbc/dbsource根据您的配置进行相应修改

Context ctx = new InitialContext();

Connection con;

DataSource ds;

System.out.println( "开始查找数据源exercise" );

Object obj = ctx.lookup( lookupName );

ds = ( DataSource ) obj;

con = ds.getConnection();

if( con !=null ){

out.println("exercise配置成功:"+ obj.getClass().getName() );

out.println("exercise配置成功:"+ lookupName );

}

con=null;

InitialContext initCtx = new InitialContext();

Context envCtx = (Context) initCtx.lookup("java:comp/env");

ds = (DataSource) envCtx.lookup("jdbc/oracleData");

con = ds.getConnection();

if( con !=null ){

       out.println("/nexercise配置成功:"+ obj.getClass().getName() );

}

%>

五、   其它类型数据库数据源配置

对于其它类型的数据库,只需修改driverClassNameurl,其它参数相同,driverClassNameurl参数值参考下表:

数据库

driverClassName

url

Oracle

oracle.jdbc.driver.OracleDriver

jdbc:oracle:thin:@127.0.0.1:1521:ORCL

SQLServer

net.sourceforge.jtds.jdbc.Driver

jdbc:jtds:sqlserver://127.0.0.1:1433/DB

MySQL

org.gjt.mm.mysql.Driver

jdbc:mysql://127.0.0.1:3306/tes

DB2

com.ibm.db2.jcc.DB2Driver

jdbc:db2://127.0.0.1:50000/BZ

Access

sun.jdbc.odbc.JdbcOdbcDriver

jdbc:odbc:test

注:Access数据库需要建立ODBC数据源。

六、   常用问题与解决办法

1、Name jdbc is not bound in this ContextCannot create JDBC driver of class '' for connect URL 'null' conf localhost错误

以上错误是为配置的全局数据源错误或映射信息不正确造成,检查全局数据源名称,映射信息中的数据源名称和程序中使用的数据源名称,注意大小写的统一。

2、Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver'错误

没有把相应数据库驱动jar包拷贝到${tomcat_home}/common/lib下,拷贝相应数据库驱动jar到该目录即可。

原创粉丝点击