也可以实现
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>
推荐阅读
-
-
新华社新闻|研究发现:儿童鼻子里可携带冠状病毒数周
-
-
福建漳州一男子为跟同事“开玩笑” 伪造核酸检测阳性报告被立案侦查
-
[人民网]俄罗斯拟于2025年前组建战斗机器人部队
-
「潞州节度」俄罗斯VK-2500借机崛起,自作自受!乌克兰阻挠中企收购马达西奇
-
央视新闻客户端▲累计55061例,加拿大新增新冠肺炎确诊病例1825例
-
新智元|检测挑战赛揭榜,中科大俞能海张卫明团队获亚军!冠军疑违规50万美元奖金遭取消,全球最大规模Deepfake
-
-
中国西藏新闻网|扎西占堆: 做自己美好生活的创造者
-
三国志战略版最高多少章节,三国志战略版名声上限是多少
-
大有文章|古代女子投河自尽时,为何在河边留一双绣花鞋?其实里面大有文章
-
自己的房子装修,咋知道要多少网线,电线,水管,啥的,价格大概都是多少啊?
-
-
-
莱万多夫斯基|重磅!64年来首次!2020金球奖取消:梅西无缘连庄,球迷心疼莱万
-
牛肉不能和什么菜一起吃 食物相克表 牛肉不能和什么菜一起吃
-
硅兔赛跑:Yelp裁员上千; Zoom被股东起诉; WeWork状告软银|硅兔News,特斯拉降薪,
-
同比|*ST江特:2020年前三季度净利润约2139万元,同比增加229.99%
-
『不再』四川诞生第2座全国百强城市,成都不再“孤单”,将是成渝副中心