麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Tomcat 的數(shù)據(jù)庫(kù)連接池設(shè)置與應(yīng)用

2019-11-18 13:04:46
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1.將數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的JAR文件放在Tomcat的 common/lib 中;

2.在server.xml中設(shè)置數(shù)據(jù)源,以MySQL數(shù)據(jù)庫(kù)為例,如下:
在<GlobalNamingResources> </GlobalNamingResources>節(jié)點(diǎn)中加入,
      <Resource
      name="jdbc/DBPool"
      type="javax.sql.DataSource"
      passWord="root"
      driverClassName="com.mysql.jdbc.Driver"
      maxIdle="2"
      maxWait="5000"
      username="root"
      url="jdbc:mysql://127.0.0.1:3306/test"
      maxActive="4"/>
   屬性說(shuō)明:name,數(shù)據(jù)源名稱,通常取”jdbc/XXX”的格式;
            type,”javax.sql.DataSource”;
            password,數(shù)據(jù)庫(kù)用戶密碼;
            driveClassName,數(shù)據(jù)庫(kù)驅(qū)動(dòng);
            maxIdle,最大空閑數(shù),數(shù)據(jù)庫(kù)連接的最大空閑時(shí)間。超過(guò)空閑時(shí)間,數(shù)據(jù)庫(kù)連
                     接將被標(biāo)記為不可用,然后被釋放。設(shè)為0表示無(wú)限制。
            MaxActive,連接池的最大數(shù)據(jù)庫(kù)連接數(shù)。設(shè)為0表示無(wú)限制。
            maxWait ,最大建立連接等待時(shí)間。假如超過(guò)此時(shí)間將接到異常。設(shè)為-1表示
                     無(wú)限制。

3.在你的web應(yīng)用程序的web.xml中設(shè)置數(shù)據(jù)源參考,如下:
  在<web-app></web-app>節(jié)點(diǎn)中加入,
  <resource-ref>
    <description>MySQL DB Connection Pool</description>
    <res-ref-name>jdbc/DBPool</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
 </resource-ref>
  子節(jié)點(diǎn)說(shuō)明: description,描述信息;
               res-ref-name,參考數(shù)據(jù)源名字,同上一步的屬性name;
               res-type,資源類型,”javax.sql.DataSource”;
               res-auth,”Container”;
               res-sharing-scope,”Shareable”;

4.在web應(yīng)用程序的context.xml中設(shè)置數(shù)據(jù)源鏈接,如下:
  在<Context></Context>節(jié)點(diǎn)中加入,
  <ResourceLink
   name="jdbc/DBPool" 
   type="javax.sql.DataSource" 
   global="jdbc/DBPool"/>
   屬性說(shuō)明:name,同第2步和第3步的屬性name值,和子節(jié)點(diǎn)res-ref-name值;
             type,同樣取”javax.sql.DataSource”;
             global,同name值。
 
至此,設(shè)置完成,下面是如何使用數(shù)據(jù)庫(kù)連接池。
1.建立一個(gè)連接池類,DBPool.java,用來(lái)創(chuàng)建連接池,代碼如下:
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DBPool {
    PRivate static DataSource pool;
    static {
         Context env = null;
          try {
              env = (Context) new InitialContext().lookup("java:comp/env");
              pool = (DataSource)env.lookup("jdbc/DBPool");
              if(pool==null) 
                  System.err.println("'DBPool' is an unknown DataSource");
               } catch(NamingException ne) {
                  ne.printStackTrace();
          }
      }
    public static DataSource getPool() {
        return pool;
    }
}

2.在要用到數(shù)據(jù)庫(kù)操作的類或jsp頁(yè)面中,用DBPool.getPool().getConnection(),獲得一個(gè)Connection對(duì)象,就可以進(jìn)行數(shù)據(jù)庫(kù)操作,最后別忘了對(duì)Connection對(duì)象調(diào)用close()方法,注重:這里不會(huì)關(guān)閉這個(gè)Connection,而是將這個(gè)Connection放回?cái)?shù)據(jù)庫(kù)連接池。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产一级在线观看视频 | 91伊人久久 | 欧美精品久久久久久久久久 | 好吊色37pao在线观看 | 成年人毛片视频 | 99精品在线视频观看 | 免费a级毛片大学生免费观看 | 精品国产一区二区三区四区在线 | 成人一区三区 | 老女人碰碰在线碰碰视频 | 一区二区三区日韩在线 | 国产一区精品在线观看 | 全视频tv | 黄色影院在线看 | av观看国产 | 在线观看中文字幕av | 国产精品视频海角社区88 | 成人午夜精品久久久久久久3d | 日本最新免费二区三区 | 国产午夜精品久久久 | 久久蜜桃香蕉精品一区二区三区 | 久久精品亚洲一区二区三区观看模式 | 日本中文字幕久久 | 日韩视频区| 亚洲网站在线观看视频 | 国产亚洲精久久久久久蜜臀 | 一级做a爰性色毛片免费 | 极色品影院 | 国产成人综合在线观看 | 91九色丨porny丨国产jk | av免费不卡国产观看 | sesee99| 国产精品一区二区x88av | 精品久久中文网址 | 毛片在线免费观看完整版 | 精品国产乱码一区二区三区四区 | 日韩中文一区 | 国产亚洲精品久久久久久久久久 | 4p一女两男做爰在线观看 | 久草成人在线观看 | 香蕉视频99 |