最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
怎么在Java中利用MySQL實現(xiàn)一個連接池功能

這篇文章給大家介紹怎么在Java中利用MySQL實現(xiàn)一個連接池功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創(chuàng)新互聯(lián)長期為近1000家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為綏德企業(yè)提供專業(yè)的成都網站設計、網站建設,綏德網站改版等技術服務。擁有10多年豐富建站經驗和眾多成功案例,為您定制開發(fā)。

官方:數(shù)據(jù)庫連接池(Connection pooling)是程序啟動時建立足夠的數(shù)據(jù)庫連接,并將這些連接組成一個連接池,由程序動態(tài)地對連接池中的連接進行申請,使用,釋放。

理解:創(chuàng)建數(shù)據(jù)庫連接池是一個很耗時的操作,也容易對數(shù)據(jù)庫造成安全隱患。所以,在程序初始化的時候,集中創(chuàng)建多個數(shù)據(jù)庫連接池,并把他們集中管理,供程序使用,可以保證較快的數(shù)據(jù)庫讀寫速度,還更加的安全可靠。

手動配置連接池:

/**
   * 手動設置連接池
   */
  public void demo1(){

    // 獲得連接:
    Connection conn = null;
    PreparedStatement pstmt = null;
    ResultSet rs = null;
    try{
      // 創(chuàng)建連接池:
      ComboPooledDataSource dataSource = new ComboPooledDataSource();
      // 設置連接池的參數(shù):
      dataSource.setDriverClass("com.mysql.jdbc.Driver");
      dataSource.setJdbcUrl("jdbc:mysql:///jdbctest");
      dataSource.setUser("root");
      dataSource.setPassword("abc");
      dataSource.setMaxPoolSize(20);
      dataSource.setInitialPoolSize(3);
      
      // 獲得連接:
      conn = dataSource.getConnection();
      // 編寫Sql:
      String sql = "select * from user";
      // 預編譯SQL:
      pstmt = conn.prepareStatement(sql);
      // 設置參數(shù)
      // 執(zhí)行SQL:
      rs = pstmt.executeQuery();
      while(rs.next()){
        System.out.println(rs.getInt("uid")+"  "+rs.getString("username")+"  "+rs.getString("password")+"  "+rs.getString("name"));
      }
    }catch(Exception e){
      e.printStackTrace();
    }finally{
      JDBCUtils.release(rs, pstmt, conn);
    }
  }

使用配置文件配置連接池:

配置文件xml如下:




 
  com.mysql.jdbc.Driver
  jdbc:mysql:///jdbctest
  root
  abc
  5
  20
 
 

代碼如下:

/**
   * 使用配置文件的方式
   */
  public void demo2(){
    Connection conn = null;
    PreparedStatement pstmt = null;
    ResultSet rs = null;
    try{
      /*// 獲得連接:
      ComboPooledDataSource dataSource = new ComboPooledDataSource();*/
      // 獲得連接:
      // conn = dataSource.getConnection();
      conn = JDBCUtils2.getConnection();
      // 編寫Sql:
      String sql = "select * from user";
      // 預編譯SQL:
      pstmt = conn.prepareStatement(sql);
      // 設置參數(shù)
      // 執(zhí)行SQL:
      rs = pstmt.executeQuery();
      while(rs.next()){
        System.out.println(rs.getInt("uid")+"  "+rs.getString("username")+"  "+rs.getString("password")+"  "+rs.getString("name"));
      }
    }catch(Exception e){
      e.printStackTrace();
    }finally{
      JDBCUtils2.release(rs, pstmt, conn);
    }
  }

關于怎么在Java中利用MySQL實現(xiàn)一個連接池功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


本文名稱:怎么在Java中利用MySQL實現(xiàn)一個連接池功能
文章位置:http://fisionsoft.com.cn/article/gcjijh.html