DBCP使用BasicdataSource连接(两种单例模式-----饿汉和懒汉模式)
生活随笔
收集整理的這篇文章主要介紹了
DBCP使用BasicdataSource连接(两种单例模式-----饿汉和懒汉模式)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
DBCP使用BasicDataSource連接
BasicDataSource實現DataSource的接口,可以進行簡單的數據庫連接
第一種:懶漢模式:顧名思義,“懶”,只有在調用方法時才構造對象
package com.example.dao;import org.apache.commons.dbcp2.BasicDataSource;import javax.sql.DataSource;public class t1 {private static DataSource dataSource ; //懶漢模式private t1(){}private static DataSource getDataSource(){if(dataSource==null){BasicDataSource basicDataSource = new BasicDataSource();String strUri = "jdbc:mysql://localhost:3306/practical_training?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong&allowPublicKeyRetrieval=true";String strDriver = "com.mysql.cj.jdbc.Driver";String userName = "root";String userpwd = "123456";basicDataSource.setUrl(strUri);basicDataSource.setDriverClassName(strDriver);basicDataSource.setPassword(userpwd);basicDataSource.setUsername(userName);dataSource = basicDataSource;}return dataSource;}}第二種:餓漢模式:慌不擇食,一開始就創建了對象
package com.example.dao;import org.apache.commons.dbcp2.BasicDataSource;import javax.sql.DataSource; //你永遠想不到困住你的是什么public class DBCPDataSource {private static DataSource dataSource;// = new BasicDataSource(); // 餓漢方式 -- 線程安全的// 靜態語句塊進行初始static { // 線程安全的,和懶漢方式是一樣,只不過形式不一樣BasicDataSource basicDataSource = new BasicDataSource();// 設置數據源的數據庫連接屬性// 數據庫jdbc連接屬性信息// uri mysql5和mysql8 連接串不一樣,8要求有時區屬性// localhost - 數據庫服務器主機名,或者ip地址, 127.0.0.1 表示本機// 注意: 如果連接串解析是被,要注意可能是因為 & 引起的,因為有時需要 使用 & 的html轉移符號 &String strUri8 = "jdbc:mysql://localhost:3306/practical_training?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong&allowPublicKeyRetrieval=true";// drivername的名字 mysql5和mysql8 不一樣String strDriverName8 = "com.mysql.cj.jdbc.Driver";String strUserName = "root";String strUserPsw = "123456";// 給數據源對象設置相關數據庫連接屬性basicDataSource.setUrl(strUri8);basicDataSource.setDriverClassName(strDriverName8);basicDataSource.setUsername(strUserName);basicDataSource.setPassword(strUserPsw);// 還可以繼續set設置dbcp數據源的其他的屬性值【參考官網或其他資料設置,一般根據項目運行時的狀態由dba進行調試,此處,采用默認值】basicDataSource.setInitialSize(3); // 連接池初始化的數量// 多態,父類指代子類dataSource = basicDataSource;}// 2 構造方法私有化private DBCPDataSource() {}// 3 提供一個全局的訪問方法入口public static DataSource getDataSource() {return dataSource;} }總結
以上是生活随笔為你收集整理的DBCP使用BasicdataSource连接(两种单例模式-----饿汉和懒汉模式)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: File工具类查找
- 下一篇: mybatis框架使用generator