mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-05-09 23:51:34 +08:00
fix beeCp bug
This commit is contained in:
parent
fd090664dd
commit
09e2df8248
@ -25,7 +25,7 @@
|
||||
<hikariCP.version>2.4.13</hikariCP.version>
|
||||
<mongo.version>3.12.8</mongo.version>
|
||||
<sqlite.version>3.34.0</sqlite.version>
|
||||
<hsqldb.version>2.6.0</hsqldb.version>
|
||||
<hsqldb.version>2.5.2</hsqldb.version>
|
||||
<jedis.version>3.6.0</jedis.version>
|
||||
</properties>
|
||||
|
||||
@ -80,7 +80,7 @@
|
||||
<dependency>
|
||||
<groupId>com.github.chris2018998</groupId>
|
||||
<artifactId>beecp</artifactId>
|
||||
<version>3.2.1</version>
|
||||
<version>3.1.2</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
|
@ -2,11 +2,13 @@ package cn.hutool.db.ds.bee;
|
||||
|
||||
import cn.beecp.BeeDataSource;
|
||||
import cn.beecp.BeeDataSourceConfig;
|
||||
import cn.beecp.TransactionIsolationLevel;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.db.ds.AbstractDSFactory;
|
||||
import cn.hutool.setting.Setting;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.Connection;
|
||||
|
||||
/**
|
||||
* BeeCP数据源工厂类
|
||||
@ -42,6 +44,17 @@ public class BeeDSFactory extends AbstractDSFactory {
|
||||
}
|
||||
}
|
||||
|
||||
// since BeepCP 3.2.1 bug,Sqlite下默认Transaction Isolation不支持,在此判断修正
|
||||
if(StrUtil.containsIgnoreCase(jdbcUrl, "sqlite")){
|
||||
final int isolationCode = beeConfig.getDefaultTransactionIsolationCode();
|
||||
if(Connection.TRANSACTION_READ_UNCOMMITTED != isolationCode
|
||||
&& Connection.TRANSACTION_SERIALIZABLE != isolationCode){
|
||||
// SQLite只支持这两种事务
|
||||
beeConfig.setDefaultTransactionIsolation(TransactionIsolationLevel.LEVEL_READ_UNCOMMITTED);
|
||||
beeConfig.setDefaultTransactionIsolationCode(Connection.TRANSACTION_READ_UNCOMMITTED);
|
||||
}
|
||||
}
|
||||
|
||||
return new BeeDataSource(beeConfig);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user