public class DriverAdapterHolder extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
static LinkedHashMap<DatabaseType,DriverAdapter> |
user_adapters
项目注册adapter用来覆盖adapters
|
| 构造器和说明 |
|---|
DriverAdapterHolder() |
| 限定符和类型 | 方法和说明 |
|---|---|
static DriverAdapter |
after(DataRuntime runtime,
Object datasource,
DriverAdapter adapter) |
static String |
feature(DataRuntime runtime,
Object datasource)
数据源特征 默认不需要实现 由上层方法自动提取一般会通过 driver_产品名_url 合成
|
static DriverAdapter |
getAdapter(DatabaseType type)
获取支持数据库的适配器,注意有可能获取到多个
|
static DriverAdapter |
getAdapter(String datasource,
DataRuntime runtime)
定位适配器
过程:
1.检测环境中是否只有1个adapter,如果是直接返回
2.检测环境中是否只有2个adapter并且包含1个common,如果是直接返回非common的adapter
3.根据项目实现的DataSourceMonitor接口adapter(Object datasource)定位adapter
4.检测
|
static DriverAdapter |
getAdapterByMonitor(DataRuntime runtime,
Object datasource) |
static List<DriverAdapter> |
getAdapters() |
static List<DriverAdapter> |
getAdapters(DatabaseType type) |
static DataSourceMonitor |
getMonitor() |
static boolean |
keepAdapter(DataRuntime runtime,
Object datasource)
同一个数据源是否保持同一个adapter
这里通常根据类型判断 如HikariDataSource DruidDataSource 针对同一个数据源对应多个不同类型数据库时才需要返回false(如一些动态数据源类型) |
static String |
key(DataRuntime runtime,
Object datasource) |
static void |
reg(DatabaseType type,
DriverAdapter adapter) |
static void |
setAdapters(Map<String,DriverAdapter> map) |
static void |
setMonitor(DataSourceMonitor monitor) |
static boolean |
support(DatabaseType type) |
public static LinkedHashMap<DatabaseType,DriverAdapter> user_adapters
public static void reg(DatabaseType type, DriverAdapter adapter)
public static void setMonitor(DataSourceMonitor monitor)
public static DataSourceMonitor getMonitor()
public static boolean keepAdapter(DataRuntime runtime, Object datasource)
datasource - 数据源public static DriverAdapter getAdapterByMonitor(DataRuntime runtime, Object datasource)
public static String feature(DataRuntime runtime, Object datasource)
datasource - 数据源public static DriverAdapter after(DataRuntime runtime, Object datasource, DriverAdapter adapter)
public static String key(DataRuntime runtime, Object datasource)
public static DriverAdapter getAdapter(DatabaseType type)
type - 数据库类型public static List<DriverAdapter> getAdapters(DatabaseType type)
public static List<DriverAdapter> getAdapters()
public static void setAdapters(Map<String,DriverAdapter> map)
public static boolean support(DatabaseType type)
public static DriverAdapter getAdapter(String datasource, DataRuntime runtime)
datasource - 数据源名称(配置文件中的key)runtime - 运行环境主要包含驱动适配器 数据源或客户端Copyright © 2025. All rights reserved.