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

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

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

    The important thing in life is to have a great aim , and the determination

    常用鏈接

    統計

    IT技術鏈接

    保險相關

    友情鏈接

    基金知識

    生活相關

    最新評論

    DAO 設計3、數據庫連接的管理



    DAO 類是線程安全的,它的所有操作都通過調用 DbExecutor 對象來執行。每次操作,DAO 都會從 DbExecutorFactory 中獲得一個 DbExecutor 對象。DAO 要做的就是保證做完操作之后都要執行 DbExecutor 對象的 close 方法。

    DbExecutor 是一個接口,它的大部分方法和 DAO 差不多。它包含一個數據庫連接,當連接關閉時,DbExecutor 對象的生命周期也就結束了。OraDbExecutor 是 DbExecutor 的一個實現。

    OraDbExecutor.java - 構造函數
    1. /**
    2. * 構造函數
    3. *
    4. * @param dsName 數據源名稱
    5. * @param conn 數據庫連接
    6. */
    7. public OraDbExecutor(String dsName, Connection conn) {
    8. this.dsName = dsName;
    9. this.connection = conn;
    10. }


    當創建 DbExecutor 實例時,DbExecutorFactory 先從 ConnectionFactoryBuilder 獲得一個 ConnectionFactory 對象,然后從ConnectionFactory 獲取一個數據庫連接,用來創建 DbExecutor。當然,連接每個數據庫的 ConnectionFactory 對象只有一個。

    ConnectionFactoryBuilder.java - build()
    1. /**
    2. * 創建一個數據庫連接工廠
    3. *
    4. * @param dsName 配置文件中的 datasource 名稱
    5. *
    6. * @return 數據庫連接工廠
    7. *
    8. * @throws ConfigErrorException 如果配置文件不正確
    9. */
    10. publicsynchronized ConnectionFactory build(String dsName) throws ConfigErrorException {
    11. // 先從緩存中查找
    12. if (factoryCache.get(dsName) == null) {
    13. DataSourceCollection sources = Configurator.getDataSources();
    14. DataSource ds = sources.getDataSource(dsName);
    15. if (ds == null) {
    16. thrownew ConfigErrorException("沒有找到數據源 " + dsName);
    17. }
    18. factoryCache.put(dsName, buildFactory(ds));
    19. }
    20. return (ConnectionFactory) factoryCache.get(dsName);
    21. }

    posted on 2007-03-15 23:25 鴻雁 閱讀(263) 評論(0)  編輯  收藏

    主站蜘蛛池模板: 亚洲欧洲日产v特级毛片| 精品免费AV一区二区三区| 四虎影院在线免费播放| 污视频网站在线免费看| 久久精品国产亚洲| 毛片免费在线播放| 中文永久免费观看网站| 2020国产精品亚洲综合网| 国产亚洲成人在线播放va| 国产香蕉免费精品视频| 日韩大片在线永久免费观看网站| 亚洲日本在线看片| 免费观看午夜在线欧差毛片| 无码精品一区二区三区免费视频 | 国产AV无码专区亚洲AV麻豆丫| MM131亚洲国产美女久久| 最近在线2018视频免费观看| 成人免费网站视频www| 亚洲国产日韩在线成人蜜芽| 亚洲性久久久影院| 成年18网站免费视频网站| a在线观看免费网址大全| 亚洲日韩AV一区二区三区四区| 亚洲Av综合色区无码专区桃色| 日韩成人在线免费视频| 久久精品无码专区免费青青 | 青娱乐免费视频在线观看| 一级做受视频免费是看美女| 亚洲18在线天美| 亚洲国产精品自在线一区二区 | 国产福利免费在线观看| 91久久精品国产免费直播| 国产三级在线免费观看| 亚洲精品无码少妇30P| 亚洲无圣光一区二区| 亚洲美女又黄又爽在线观看| 四虎永久免费影院| 毛片免费全部播放一级| 四虎1515hh永久久免费| 88av免费观看入口在线| 成人性生交大片免费看好|