欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JNDI入门配置 TomcatJDBCSQL ServerXMLOracle 

程序员文章站 2022-05-24 08:20:59
...
我用的数据库是Oracle10g,所以首先要把Oracle的JDBC驱动程序拷贝到Tomcat安装目录的/common/lib下和你自己网站的/WEB-INF/lib下。
Server.xml的修改我可以使用Tomcat的Admin组件完成,完全图形化配置,相当容易。或者按下面的写法
在<GlobalNamingResources></GlobalNamingResources>之间写如下配置(仅供参考):
<Resource
      name="jdbc/ipsdb"
      type="javax.sql.DataSource"
      password="zhangwei"
      driverClassName="oracle.jdbc.driver.OracleDriver"
      maxIdle="2"
      maxWait="5000"
      username="System"
      url="jdbc:oracle:thin:@127.0.0.1:1521:xe"
      maxActive="4"/>
     
然后,在Tomcat安装目录下/conf/Catalina/localhost文件夹中建立一个和你网站文件夹名字一样的XML文件。例如:JNDI.xml。内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
      name="jdbc/ipsdb"
      type="javax.sql.DataSource"
      password="zhangwei"
      driverClassName="oracle.jdbc.driver.OracleDriver"
      maxIdle="2"
      maxWait="5000"
      username="System"
      url="jdbc:oracle:thin:@127.0.0.1:1521:xe"
      maxActive="4"/>
</Context>
其实就是把Server.xml的内容再重复一遍。这一步非常重要,如果没有这步就会出错,会出现org.apache.tomcat.dbcp.dbcp.SQLNestedException:
Cannot create JDBC driver of class '' for connect URL 'null'错误。

最后,在你自己网站的/WEB-INF/web.xml文件中,添加一下代码(参考):
<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/ipsdb</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

OK。配置全部完成。现在你可以写代码测试这个数据库连接池了。如:
DataSource ds = null;
InitialContext ctx=new InitialContext();
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/ipsdb");
Connection conn = ds.getConnection();
然后使用conn进行数据库SQL操作