在tomcat中配置连接池

                         在tomcat中配置连接池

1.打开server.xml:在<Context > </Contex>中添加如下连接池参数语句,一个完整的例子如下:
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="E:/Projects/ColorRing/wap" path="/wap" reloadable="true">
  <Resource name="jdbc/wapOracle" auth="Container"
        type="javax.sql.DataSource"/>
  <ResourceParams name="jdbc/wapOracle">         <!--这里name的值必须与Resource里的name的值相同-->
   <parameter>
     <name>factory</name>
     <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
   </parameter> 
    <parameter>
      <name>url</name>
      <value>jdbc:oracle:thin:@172.18.51.101:1521:sundb</value>   <!--连接数据库的url-->
    </parameter>
    <parameter>
      <name>maxIdle</name>
      <value>20</value>
    </parameter>
    <parameter>
      <name>maxActive</name>
      <value>0</value>
    </parameter>
    <parameter>
      <name>driverClassName</name>
      <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
      <name>maxWait</name>
      <value>5000</value>
    </parameter>
    <parameter>
      <name>removeAbandoned</name>
      <value>true</value>
    </parameter>
    <parameter>                     
      <name>username</name>           <!--用户名-->
      <value>cms_user</value>
    </parameter>
    <parameter>
      <name>logAbandoned</name>
      <value>true</value>
    </parameter>
    <parameter>
      <name>removeAbandonedTimeout</name>
      <value>60</value>
    </parameter>
    <parameter>
      <name>password</name>          <!--密码-->
      <value>12345</value>
    </parameter>
  </ResourceParams>
</Context>


2.打开工程下的WEB-INF/web.xml,添加如下部分:
  <resource-ref>
    <description>Oracle Datasource example</description>
    <res-ref-name>jdbc/wapOracle</res-ref-name>           <!--这里name的值也必须与server.xml中的Resource里的name的值相同-->
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
 
3.然后写连接数据库的语句:
package util;

import java.sql.*;
import javax.sql.*;
import javax.naming.*;

public class OracleDB {
    String url_  = "192.168.1.41:1521:gxcring";
    //String url_ = "172.18.51.101:1521:SUNDB";
    String id_ = "cms_user";
    String pass_ = "12345";

    Connection conn = null;
    Statement stmt = null;

    public OracleDB() {
        try {
            //Class.forName("oracle.jdbc.driver.OracleDriver");
            //conn = DriverManager.getConnection("jdbc:oracle:thin:@" + url_, id_, pass_);
            Context initContext = new InitialContext();
            Context envContext = (Context) initContext.lookup("java:/comp/env");
            DataSource ds = (DataSource) envContext.lookup("jdbc/wapOracle");       //注意这里的名字与配置文件里的名字相同就行了。
            conn = ds.getConnection();

            stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                        ResultSet.CONCUR_UPDATABLE);
        } catch (NamingException ne) {
            System.out.println("Initial DataSource error.");
            ne.printStackTrace();
        } catch (SQLException e) {
            System.out.println("ORACLE: " + e);
            e.printStackTrace();
        }
    }

    /**
     * 返回Connction对象
     * @param none
     * @return Connction
     */
    public Connection getConn() {
        return this.conn;
    }
}

呵呵。这样就行啦, 在其它地方调用数据库时与用JDBC没有什么分别。很简单的。
                     

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

Tasia

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值