1,DBCP
这个是一个比较早期的开源的数据库连接池。是Apache下面的一个子项目。
使用分三步:1,导包 2,配置 3,使用
1,导包
有两个方式导包,第一去Apache官网下载jar包,第二去DBCP官网 下载
导包
下载jar包
把jar包放到项目中,并且add as library
配置
connectionProperties=useSSL=false;characterEncoding=utf8
有默认值,可以不配置
initialSize=5
maxTotal=10
注意:配置文件的名字,和配置文件的路径,是用户可以自己定义的
使用
static DataSource dataSource;
// 初始化
static {
// 加载配置文件
Properties properties = new Properties();
try {
properties.load(new FileInputStream("dbcp.properties"));
// 创建数据库连接池
dataSource = BasicDataSourceFactory.createDataSource(properties);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
2.C3p0
- 介绍:是一个开源的数据库连接池官网
- 导包
配置
在 类路径下面(目前是src)声明一个配置文件,名字叫做 c3p0-config.xml
xml文件类似于 html文件,其实就是一个由各个标签组成的一个文件
xml文件夹解析追踪会被解析为一个 dom树,标签是一个树结构的
xml文件最初被创建出来其实是为了 系统系统之间的 内容传输,目前这个功能被JSON 取代了,但是目前xml文件更多的是被用来当配置文件
<c3p0-config>
<!--
特殊字符 要写转义字符
转义字符
& &
> >
< <
-->
<default-config>
<property name="user">root</property>
<property name="password">123456</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/41th?useSSL=false&characterEncoding=utf8</property>
<property name="maxPoolSize">30</property>
<property name="minPoolSize">10</property>
</default-config>
<!--<named-config name="intergalactoApp "> -->
<!--<property name="maxPoolSize">1000</property> -->
<!--<property name="minPoolSize">100</property> -->
<!--<property name="numHelperThreads">50</property> -->
<!--</named-config> -->
</c3p0-config>
使用
static DataSource dataSource;
static {
// 采用 intergalactoApp 对应的配置
// dataSource = new ComboPooledDataSource("intergalactoApp");
// 使用默认的配置
dataSource = new ComboPooledDataSource();
}
// 获取连接
public static Connection getConnection(){
Connection connection = null;
try {
connection = dataSource.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return connection;
}
注意:C3p0的配置文件必须在类路径(src)下,必须名字叫做 c3p0-config.xml
3.Druid
- Druid是目前国内使用最广的数据库连接池。目前已经由alibaba捐赠给了apache,由apache来维护Druid数据库连接池的特点:
- 国产的(Alibaba)
- 官方地址
- 导包
配置
在任意路径下配置一个properties配置文件即可
driverClassName=com.mysql.jdbc.Driver
username=root
password=123456
url=jdbc:mysql://localhost:3306/41th?useSSL=false&characterEncoding=utf8
# 以下为一些 缺省配置,如果配置之后,会覆盖默认的配置
initialSize=10
maxActive=20
使用
static DataSource dataSource;
static {
try {
// 初始化datasource
Properties properties = new Properties();
properties.load(new FileInputStream("druid.properties"));
dataSource = DruidDataSourceFactory.createDataSource(properties);
}catch (Exception ex) {
ex.printStackTrace();
}
}