一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - jdbc結合dpcp連接池的封裝實例

jdbc結合dpcp連接池的封裝實例

2021-01-25 12:03葉灬黎 Java教程

下面小編就為大家帶來一篇jdbc結合dpcp連接池的封裝實例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

demo需求:

?
1
實現jdbc結合dpcp連接池封裝(以oracle數據庫為例)并實現簡單地查找demo主要技術:
?
1
2
3
4
5
6
7
(1)Properties類加載.properties的方式
 
(2)dpcp連接池建立數據庫連接的方式
 
(3)查詢數據的方式
 
(4)靜態代碼塊的使用,分離驅動的加載和連接信息的載入,整個服務器生命周期只執行一次

demo所用jar包:

?
1
2
3
classes12.jar
commons-dbcp-1.4.jar
commons-pool-1.5.4.jar

demo主要代碼展示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Utils.java
 private static Connection conn = null;
 private static BasicDataSource dataSource = new BasicDataSource();
 private static Properties prop = getProperties("src/db.properties");
 
 // 將連接池的創建放在靜態代碼塊,保證整個服務器生命周期只執行一次,減少服務器負擔
 static {
  try {
   dataSource.setDriverClassName(prop.getProperty("driver"));
   dataSource.setUrl(prop.getProperty("url"));
   dataSource.setUsername(prop.getProperty("user"));
   dataSource.setPassword(prop.getProperty("password"));
   dataSource.setMaxActive(20);
   dataSource.setInitialSize(10);
  } catch (Exception e) {
   System.out.println("連接池創建失敗");
  }
 }
 
 /**
  * show 方法簡介 獲取數據庫連接池的連接,因為已經封裝,以后只需要配置db.properties,無需動這邊代碼
  *
  * @author 葉灬黎
  * @return
  */
 public static Connection getConnection() {
  try {
   conn = dataSource.getConnection();
  } catch (Exception e) {
   System.out.println("數據庫連接失敗");
  }
  return conn;
 }
 
 /**
  * show 方法簡介 讀取.properties文件,這里主要服務于想將jdbc連接數據庫的各項參數抽取出來
  *
  * @author 葉灬黎
  * @param file
  *   要讀取的.properties文件的路徑
  * @return Properties類對象
  */
 private static Properties getProperties(String file) {
  Properties properties = new Properties();
  try {
   FileInputStream fis = new FileInputStream(new File(file));
   properties.load(fis);
   fis.close();
  } catch (IOException e) {
   System.out.println("加載配置文件出錯");
  }
  return properties;
 }
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
OneSelect.java
 public static void main(String[] args) {
  List<String> names = new ArrayList<>();
  
  try {
   Connection conn = Utils.getConnection();
   //創建執行引擎
   Statement state = conn.createStatement();
   //執行sql
   String sql = "select * from emp";
   ResultSet rs = state.executeQuery(sql);
   while(rs.next()){
    names.add(rs.getString("ename"));
   }
   rs.close();
   state.close();
   conn.close();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  
  for(String s : names){
   System.out.println(s);
  }
 }
?
1
2
3
4
5
db.properties(src目錄下)
  driver = oracle.jdbc.driver.OracleDriver
  url = jdbc:oracle:thin:@127.0.0.1:1521:orcl
  user = scott
  password = 123456

demo資源位置:

?
1
svn://106.15.229.200/Javaweb/tinyDemo_jdbc 用戶temp/密碼temp)

以上這篇jdbc結合dpcp連接池的封裝實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/yeli/archive/2017/10/26/7739308.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 99精品免费视频 | 小小水蜜桃视频高清在线观看免费 | 欧美性4khd720 | 全弄乱纶小说 | 小浪妇奶真大水多 | 禁忌第一季第3季 | 91精品天美精东蜜桃传媒免费 | 白丝萝莉喷水 | 明星ai智能人脸替换造梦在线播放 | 国产精品视频久 | 日韩视频一区二区三区 | 校花在公车上被内射好舒服 | 亚洲sss综合天堂久久久 | 男生操女生的漫画 | 污斗罗大陆| 操穴勤 | 成全视频在线观看免费 | 波多野结衣xxxxx在线播放 | 国内精品一区二区在线观看 | 99精品在线| 狠狠撸在线播放 | 啪啪导航| 欧美人禽杂交av片 | 好男人资源免费播放在线观看 | 东北恋哥在线播放免费播放 | 日韩伦理在线观看 | 亚洲视频99 | 描写细腻的高h肉 | 欧美亚洲国产精品久久久 | 91精品国产高清久久久久久 | 91九色jiuse006| 日韩高清一区二区三区不卡 | 蜜桃在线| 成人免费影 | 美女被无套进入 | 天美传媒在线视频 | 香蕉免费一区二区三区在线观看 | 国产伊人久久 | 欧美乱码视频 | 免费视频专区一国产盗摄 | 日韩无遮挡大尺度啪啪影片 |