也可以实现
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>
推荐阅读
-
-
时代财经|中概股启动“备胎计划”,网易赴港二次上市
-
ios先锋:安利一款好用到爆的、免费的 Mac 视频播放器
-
-
中国新闻网|香港服务业收益第二季度普跌 快递业逆势升逾30%
-
『珠海奥威Power-BI』自带ETL的商业智能BI更利于个性化开发
-
产业气象站:入局换电市场,中恒电气2亿增资CATL子公司
-
-
-
【游戏小趣谈|是新人太厉害,还是老牌强队跟不上时代?,KPL三支冠军战队翻船】
-
-
机遇|银行股"历史性机遇"?基金投研专家最新研判来了
-
小成谈时尚|黑色斜肩连衣裙,优雅大方,尽显成熟知性的女人魅力
-
-
妇科陈医师|人到中年想长寿,可常吃以下3种食物,美容养颜、增强体质!
-
东方网|蔚为大观令人叹服 “海派非遗”亮相2020上海书展
-
#水质#复工啦!长沙水质检测服务进家庭活动重启 如何报名看这里
-
iphone12|iPhone 12大规模翻车,苹果这次有点过分了
-
小来聊体坛|一人弹跳不足球商来补,中国女排谁打球最聪明?朱婷垫球都能得分
-
车品@事后“私了”有风险,“公了”又麻烦,出行最怕有事故