也可以实现
org.apache.ibatis.datasource.DataSourceFactory接口来自定义数据源实现 , 然后进行配置
配置数据库厂商标识 databaseIdProvidermybatis可以根据不同的数据库厂商执行不同的语句 , 基于映射语句中的databaseId属性 。mybatis会加载带有匹配当前数据库databaseId属性个所有不带databaseId属性的语句 。如果同时找到带有databaseId的不带databaseId的相同语句 , 后者会被舍弃
<!-- 数据库厂商标识 --><databaseIdProvider type="DB_VENDOR"><!-- name为使用DatabaseMetaData#getDatabaseProductName()返回的厂商名称value为所设置的别名,使用databaseId时使用别名即可 --><property name="MySQL" value=https://www.isolves.com/it/cxkf/kj/2021-03-12/"mysql"/>在mapper.xml中可以配置不同数据库的sql语句
<!-- 查询数据的方法 --><!-- mysql --><select id="selectUser" resultType="User" databaseId="mysql">select * from users where id = #{id}</select><!-- oracle --><select id="selectUser" resultType="User" databaseId="oracle">select * from users where id = #{id}</select>可以实现
org.apache.ibatis.mapping.DatabaseIdProvider接口自定义DatabaseIdProvider
配置映射器mappers将写好的sql映射文件(mapper.xml)注册到全局配置文件中
<!-- mapper配置 --><mappers><!-- resource引入类路径下的资源--><mapper resource="mapper/UserMapper.xml"/><!-- url引入网络或者磁盘路径下的sql映射文件 --><mapper url=""/><!-- class基于注解的方式 , 注册类文件 --><mapper class="com.zhanghe.study.mybatis.mapper.UserMapper"/><!-- 批量注册 注册整个包下的--><package name="com.zhanghe.study.mybatis.mapper"/></mappers>
推荐阅读
-
大话百科天地OLED彩色化技术,是OLED发展与应用需要突破的关键技术
-
向华强|向华强74岁杭州庆生!向佐、郭碧婷缺席…老婆向太陪伴吹蜡烛
-
网络祝年丨【新春走基层】机器人扎堆还出现5G信号 杭州东站有点
-
-
-
第一财经|上证指数修订 4000点可期?|午盘策略
-
-
-
马云真没“瞎说”!未来这3大常见职业,或将面临失业,望周知
-
-
果粉之家0SE的热销,是小屏机回归的号角?,新iPhone
-
-
-
重紫|期待《重紫》定档,两生师徒缘分,仙魔旷世奇恋
-
情感_未命中|“孩子生两个,一个随一家姓”,两头婚真的很现代?
-
-
-
『宝鸡』1980年到1983年出生的宝鸡人请注意!
-
-