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