public interface DataSourceMonitor
| 限定符和类型 | 方法和说明 |
|---|---|
default DriverAdapter |
adapter(DataRuntime runtime,
Object datasource)
根据数据源定位adapter,如果实现了这个方法就不需要实现feature
|
default DriverAdapter |
after(DataRuntime runtime,
Object datasource,
DriverAdapter adapter)
上层方法完成adapter定位后调用,可以在这里缓存,下一次定位提供给adapter(Object datasource)
|
default int |
destroy(DataRuntime runtime,
String key,
Object datasource)
注销数据源之前会调用
|
default String |
feature(DataRuntime runtime,
Object datasource)
数据源特征 默认不需要实现 由上层方法自动提取一般会通过 driver_产品名_url 合成
|
default boolean |
keepAdapter(DataRuntime runtime,
Object datasource)
同一个数据源是否保持同一个adapter
这里通常根据类型判断 如HikariDataSource DruidDataSource 针对同一个数据源对应多个不同类型数据库时才需要返回false(如一些动态数据源类型) |
default String |
key(DataRuntime runtime,
Object datasource)
数据源唯一标识 如果不实现则默认feature
|
default boolean |
using(DataRuntime runtime,
String key,
Object datasource)
数据源是否正被使用
注意 有些动态数源中可能连接多个数据源 需要遍历检测 需要在项目中实现,在注销和覆盖数据源时会调用当前方法,如果数据源正在使用会根据情况抛出异常或忽略注销 通常情况下是检测活动中的连接数量 |
default boolean using(DataRuntime runtime, String key, Object datasource)
key - 数据源名称datasource - 数据源 一般会是一个连接池实例default int destroy(DataRuntime runtime, String key, Object datasource) throws DataSourceUsingException
key - 数据源名称datasource - 数据源DataSourceUsingException - 如果抛出异常,上层方法会抛出异常并中断注销default String feature(DataRuntime runtime, Object datasource)
datasource - 数据源default String key(DataRuntime runtime, Object datasource)
datasource - 数据源default DriverAdapter adapter(DataRuntime runtime, Object datasource)
datasource - 数据源default DriverAdapter after(DataRuntime runtime, Object datasource, DriverAdapter adapter)
datasource - 数据源adapter - DriverAdapterdefault boolean keepAdapter(DataRuntime runtime, Object datasource)
datasource - 数据源Copyright © 2025. All rights reserved.