<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 22,comments - 35,trackbacks - 0
    1.將數(shù)據(jù)庫驅(qū)動程序的JAR文件放在Tomcat的?common/lib?中;
    2.在server.xml中設置數(shù)據(jù)源,以MySQL數(shù)據(jù)庫為例,如下:
    在<GlobalNamingResources>?</GlobalNamingResources>節(jié)點中加入,
    ??????<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"/>
    ???屬性說明:name,數(shù)據(jù)源名稱,通常取”jdbc/XXX”的格式;
    ????????????type,”javax.sql.DataSource”;
    ????????????password,數(shù)據(jù)庫用戶密碼;
    ????????????driveClassName,數(shù)據(jù)庫驅(qū)動;
    ????????????maxIdle,最大空閑數(shù),數(shù)據(jù)庫連接的最大空閑時間。超過空閑時間,數(shù)據(jù)庫連
    ?????????????????????接將被標記為不可用,然后被釋放。設為0表示無限制。
    ????????????MaxActive,連接池的最大數(shù)據(jù)庫連接數(shù)。設為0表示無限制。
    ????????????maxWait?,最大建立連接等待時間。如果超過此時間將接到異常。設為-1表示
    ?????????????????????無限制。
    3.在你的web應用程序的web.xml中設置數(shù)據(jù)源參考,如下:
    ??在<web-app></web-app>節(jié)點中加入,
    ??<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é)點說明:?description,描述信息;
    ???????????????res-ref-name,參考數(shù)據(jù)源名字,同上一步的屬性name;
    ???????????????res-type,資源類型,”javax.sql.DataSource”;
    ???????????????res-auth,”Container”;
    ???????????????res-sharing-scope,”Shareable”;
    4.在web應用程序的context.xml中設置數(shù)據(jù)源鏈接,如下:
    ??在<Context></Context>節(jié)點中加入,
    ??<ResourceLink
    ???name="jdbc/DBPool"?
    ???type="javax.sql.DataSource"?
    ???global="jdbc/DBPool"/>
    ???屬性說明:name,同第2步和第3步的屬性name值,和子節(jié)點res-ref-name值;
    ?????????????type,同樣取”javax.sql.DataSource”;
    ?????????????global,同name值。
    ?
    至此,設置完成,下面是如何使用數(shù)據(jù)庫連接池。
    1.建立一個連接池類,DBPool.java,用來創(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ù)庫操作的類或jsp頁面中,用DBPool.getPool().getConnection(),獲得一個Connection對象,就可以進行數(shù)據(jù)庫操作,最后別忘了對Connection對象調(diào)用close()方法,注意:這里不會關(guān)閉這個Connection,而是將這個Connection放回數(shù)據(jù)庫連接池。
    posted on 2006-06-14 11:17 kelven 閱讀(927) 評論(0)  編輯  收藏 所屬分類: 其它
    主站蜘蛛池模板: 久久国产免费一区二区三区| 野花视频在线官网免费1| 日本视频免费高清一本18| 国产日产亚洲系列最新| 成人无码视频97免费| 亚洲欧洲日产国码无码网站| 中文字幕乱码系列免费| 国产亚洲一区二区手机在线观看| 高清永久免费观看| 无码欧精品亚洲日韩一区| 一级毛片在线免费看| 亚洲精品91在线| 国产福利在线免费| 亚洲AV性色在线观看| 亚洲国产精品一区二区九九| japanese色国产在线看免费| 久久久久久a亚洲欧洲AV| 精品熟女少妇av免费久久| 亚洲国产成人va在线观看网址| 18禁超污无遮挡无码免费网站国产| 亚洲AV无码AV日韩AV网站| 亚洲日本中文字幕一区二区三区| 久久www免费人成精品香蕉| 无码乱人伦一区二区亚洲| 久久久久国色AV免费观看性色| 亚洲大尺度无码无码专线一区| 久久久久亚洲精品无码网址 | 国产91免费在线观看| 亚洲看片无码在线视频| 国产男女猛烈无遮挡免费视频网站| 免费在线观看一区| 亚洲∧v久久久无码精品| 成年女性特黄午夜视频免费看 | 18女人水真多免费高清毛片| 日韩亚洲产在线观看| 久久精品国产亚洲5555| 88xx成人永久免费观看| 黄色免费在线观看网址| 亚洲嫩草影院久久精品| 在线视频免费国产成人| 99ee6热久久免费精品6|