mybatis之DatabaseIdProvider
应用中可能同时涉及到多个数据库,比如MySQL,oracle等等,那么当我们使用mybatis的时候,怎么做到动态切换呢?DatabaseIdProvider
可以帮助我们
public interface DatabaseIdProvider {
default void setProperties(Properties p) {
}
String getDatabaseId(DataSource var1) throws SQLException;
}
mybatis内置了一个实现 VendorDatabaseIdProvider
(Vendor:产商),通过数据库产品名称来识别不同的数据库
当然我们也可以按照自己定义的识别不同的数据库规则来实现DatabaseIdProvider
,然后注册到 typeAliasRegistry
中。
spring中使用
mybatis-config配置
<!-- 配置 environments -->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>