add kingbas

This commit is contained in:
Looly 2021-01-25 21:02:38 +08:00
parent 7525a9a2d1
commit 03511298c2
2 changed files with 17 additions and 11 deletions

View File

@ -3,7 +3,7 @@
------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------
# 5.5.8 (2021-01-22) # 5.5.8 (2021-01-25)
### 新特性 ### 新特性
* 【extra 】 增加自动装配SpringUtil类pr#1366@Github * 【extra 】 增加自动装配SpringUtil类pr#1366@Github
@ -20,6 +20,7 @@
* 【core 】 DateConvert转换失败默认抛出异常issue#I2M5GN@Gitee * 【core 】 DateConvert转换失败默认抛出异常issue#I2M5GN@Gitee
* 【http 】 HttpServerRequest增加getParam方法 * 【http 】 HttpServerRequest增加getParam方法
* 【http 】 RootAction增加可选name参数返回指定文件名称 * 【http 】 RootAction增加可选name参数返回指定文件名称
* 【db 】 支持人大金仓8的驱动识别
### Bug修复 ### Bug修复
* 【core 】 修复FileUtil.move以及PathUtil.copy等无法自动创建父目录的问题issue#I2CKTI@Gitee * 【core 】 修复FileUtil.move以及PathUtil.copy等无法自动创建父目录的问题issue#I2CKTI@Gitee

View File

@ -18,12 +18,12 @@ import java.util.concurrent.ConcurrentHashMap;
/** /**
* 方言工厂类 * 方言工厂类
* *
* @author loolly * @author loolly
* *
*/ */
public class DialectFactory { public class DialectFactory {
/** JDBC 驱动 MySQL */ /** JDBC 驱动 MySQL */
public static final String DRIVER_MYSQL = "com.mysql.jdbc.Driver"; public static final String DRIVER_MYSQL = "com.mysql.jdbc.Driver";
/** JDBC 驱动 MySQL在6.X版本中变动驱动类名且使用SPI机制 */ /** JDBC 驱动 MySQL在6.X版本中变动驱动类名且使用SPI机制 */
@ -50,16 +50,18 @@ public class DialectFactory {
public static final String DRIVER_HSQLDB = "org.hsqldb.jdbc.JDBCDriver"; public static final String DRIVER_HSQLDB = "org.hsqldb.jdbc.JDBCDriver";
/** JDBC 驱动 达梦7 */ /** JDBC 驱动 达梦7 */
public static final String DRIVER_DM7 = "dm.jdbc.driver.DmDriver"; public static final String DRIVER_DM7 = "dm.jdbc.driver.DmDriver";
/** JDBC 驱动 人大金仓 */
public static final String DRIVER_KINGBASE8 = "com.kingbase8.Driver";
private static final Map<DataSource, Dialect> DIALECT_POOL = new ConcurrentHashMap<>(); private static final Map<DataSource, Dialect> DIALECT_POOL = new ConcurrentHashMap<>();
private DialectFactory() { private DialectFactory() {
} }
/** /**
* 根据驱动名创建方言<br> * 根据驱动名创建方言<br>
* 驱动名是不分区大小写完全匹配的 * 驱动名是不分区大小写完全匹配的
* *
* @param driverName JDBC驱动类名 * @param driverName JDBC驱动类名
* @return 方言 * @return 方言
*/ */
@ -72,7 +74,7 @@ public class DialectFactory {
/** /**
* 根据驱动名创建方言<br> * 根据驱动名创建方言<br>
* 驱动名是不分区大小写完全匹配的 * 驱动名是不分区大小写完全匹配的
* *
* @param driverName JDBC驱动类名 * @param driverName JDBC驱动类名
* @return 方言 * @return 方言
*/ */
@ -98,7 +100,7 @@ public class DialectFactory {
/** /**
* 通过JDBC URL等信息识别JDBC驱动名 * 通过JDBC URL等信息识别JDBC驱动名
* *
* @param nameContainsProductInfo 包含数据库标识的字符串 * @param nameContainsProductInfo 包含数据库标识的字符串
* @return 驱动 * @return 驱动
*/ */
@ -133,11 +135,14 @@ public class DialectFactory {
} else if (nameContainsProductInfo.contains("dm")) { } else if (nameContainsProductInfo.contains("dm")) {
// 达梦7 // 达梦7
driver = DRIVER_DM7; driver = DRIVER_DM7;
} else if (nameContainsProductInfo.contains("kingbase8")) {
// 人大金仓8
driver = DRIVER_KINGBASE8;
} }
return driver; return driver;
} }
/** /**
* 获取共享方言 * 获取共享方言
* @param ds 数据源每一个数据源对应一个唯一方言 * @param ds 数据源每一个数据源对应一个唯一方言
@ -161,7 +166,7 @@ public class DialectFactory {
/** /**
* 创建方言 * 创建方言
* *
* @param ds 数据源 * @param ds 数据源
* @return 方言 * @return 方言
*/ */
@ -171,7 +176,7 @@ public class DialectFactory {
/** /**
* 创建方言 * 创建方言
* *
* @param conn 数据库连接对象 * @param conn 数据库连接对象
* @return 方言 * @return 方言
*/ */