点击这里给我发消息 点击这里给我发消息

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

添加时间:2013-12-7
    相关阅读: 数据库 程序

  <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();
          }
        }
  
 
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册