HikariCP号称是现在性能最好的JDBC连接池组件,具体的性能到底如何,我也没有仔细的测试过,不过从它现在的发展来看,其可能确实如它宣传的那样其性能高过目前所有的连接池组件。之前对连接池的记忆一直都是C3P0、DBCP、BoneCP,这三者中BoneCP的性能是最好的,C3P0的性能在现在来说确实是非常差的了,好像C3P0很久都没有更新了,所以我们应该杜绝在项目中使用C3P0,至于是否要使用HikariCP,我觉得可以尝试。HikariCP毕竟是才出来不久,其性能到底如何,也需要实践的检验,若是担心新东西有坑,我推荐使用BoneCP。Spring现在也集成了HikariCP,所以我觉得很有尝试它的必要。前不久我在项目中使用了HikariCP,也没出现什么问题,运行比较稳定。
HikariCP在github上的地址:https://github.com/brettwooldridge/HikariCP
下面是2张HikariCP和其他连接池组件的性能比较图片:
在其网站上可以看到详细的使用文档,下面是常规的使用方法:
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
import java.sql.
Connection
;
import java.sql.SQLException;
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
/**
* HikariCP使用
* @author CoolKing
*
*/
public
class DataSource {
private HikariDataSource ds;
/**
* 初始化连接池
* @param minimum
* @param Maximum
*/
public
void init(
int
minimum,
int
Maximum){
//连接池配置
HikariConfig config = new HikariConfig();
config.setDriverClassName(
"com.mysql.jdbc.Driver"
);
config.setJdbcUrl(
"jdbc:mysql://127.0.0.1:3306/testdb?user=root&password=123456&useUnicode=true&characterEncoding=utf8"
);
config.addDataSourceProperty(
"cachePrepStmts"
,
true
);
config.addDataSourceProperty(
"prepStmtCacheSize"
, 500);
config.addDataSourceProperty(
"prepStmtCacheSqlLimit"
, 2048);
config.setConnectionTestQuery(
"SELECT 1"
);
config.setAutoCommit(
true
);
//池中最小空闲链接数量
config.setMinimumIdle(minimum);
//池中最大链接数量
config.setMaximumPoolSize(Maximum);
ds = new HikariDataSource(config);
}
/**
* 销毁连接池
*/
public
void shutdown(){
ds.shutdown();
}
/**
* 从连接池中获取链接
* @
return
*/
public
Connection
getConnection(){
try {
return
ds.getConnection();
} catch (SQLException e) {
e.printStackTrace();
ds.resumePool();
return
null
;
}
}
public
static
void main(String[] args) throws SQLException {
DataSource ds = new DataSource();
ds.init(10, 50);
Connection
conn = ds.getConnection();
//......
//最后关闭链接
conn.
close
();
}
}
|
slf4j-api-1.7.12.jar
metrics-core-3.0.2.jar
metrics-healthchecks-3.1.2.jar
javassist-3.19.0-GA.jar
HikariCP-2.3.5.jar
若使用MySQL则还需要mysql-connector-java-5.0.8-bin.jar
以上使用HikariCP需要的jar可以到http://download.csdn.net/detail/abc_key/8790543这个地址下载
来自:http://www.2cto.com/database/201506/406591.html