科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Tomcat 中通过 JNDI 配置访问数据库

Tomcat 中通过 JNDI 配置访问数据库

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  1,所需要的jar文件:commons-pool.jar, commons-dbcp.jar      2。

作者:中国IT实验室 来源:中国IT实验室 2007年9月24日

关键字: Tomcat 编程 java

  • 评论
  • 分享微博
  • 分享邮件

  <b>1,所需要的jar文件:commons-pool.jar, commons-dbcp.jar</b>
  
  <b>2,server.xml的配置:</b>
  <Resource name="jdbc/hellohibernate" scope="Shareable" auth="Container"
   type="javax.sql.DataSource"/>
   <ResourceParams name="jdbc/hellohibernate">
    <parameter>
    <name>factory</name>
    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>
    <parameter>
         <name>removeAbandoned</name>
         <value>true</value>
        </parameter>
    <parameter>
         <name>logAbandoned</name>
         <value>true</value>
        </parameter>
    <!-- DBCP database connection settings -->
    <parameter>
    <name>url</name>
    <value>jdbc:mysql://localhost:3306/test</value>
    </parameter>
    <parameter>
    <name>driverClassName</name><!--<value>com.mysql.jdbc.Driver</value>-->
    <value>org.gjt.mm.mysql.Driver</value>
    </parameter>
    <parameter>
    <name>username</name>
    <value>root</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value></value>
    </parameter>
  
    <!-- DBCP connection pooling options -->
    <parameter>
    <name>maxWait</name>
    <value>3000</value>
    </parameter>
    <parameter>
    <name>maxIdle</name>
    <value>100</value>
    </parameter>
    <parameter>
    <name>maxActive</name>
    <value>10</value>
    </parameter>
   </ResourceParams>
  
  <b>3,程序中的调用:</b>
  
  Context ctx = new InitialContext();
        if (ctx == null)
          throw new Exception("Boom - No Context");
  
        DataSource ds =
          (DataSource) ctx.lookup(
          "java:comp/env/jdbc/hellohibernate");
  
        if (ds != null) {
          Connection conn = ds.getConnection();
  
          if (conn != null) {
            foo = "Got Connection " + conn.toString();
            Statement stmt = conn.createStatement();
            ResultSet rst =
              stmt.executeQuery(
              "select username,id from user");
            if (rst.next()) {
              foo = rst.getString(1);
              bar = rst.getInt(2);
            }
            conn.close();
          }
        }
  
  

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件