也可以实现
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>
推荐阅读
-
新华网|扶贫路远 国寿情长——中国人寿寿险公司扶贫纪实
-
皇家马德里|皇马踢疯了!6分钟2球杀死悬念,经典穆氏反击,齐达内鼓掌
-
游戏在线激情▲在她面前不值一提,她才是荣耀限定最强皮肤!无限飓风号和天鹅之梦都差远了
-
「抢购一空」120元一斤,亩销售25万,未上市就被抢购一空,什么水果?
-
t-90|专打印度T90坦克,巴铁迎来又一强援,军方:向中国求购240辆
-
搭配师yoki|舒适又好看的上班穿搭,时刻都要美,休闲通勤风
-
比亚迪「骁云插电混动」未来预测:两次转型·不应再隐忍
-
业态批发 v.s. 零售:怎么看类COSTCO业态在中国发展?
-
-
-
炸馍片,切好后别直接油炸!多做1步,馍片外酥里软,咸香不油腻
-
国际萬花筒■给出的理由让人大跌眼镜,美国女子暴打86岁老太致死
-
【社区】户部巷老党员口述实录:社区24小时的“大堂经理”
-
-
电视剧,关之琳,宅男女神|日本公认的绝世美女,演技无可挑剔,54岁的她唯一缺点却在嘴巴上
-
-
余则成|细数《潜伏》,余则成至少有八个破绽,为什么没暴露?
-
生活的美好|康熙出一对子考众皇子,竟无人能对,6岁孙儿却秒对,结果太意外,原创
-
段奕宏|宝格丽发布会:吴亦凡胖了,杨蓉大胆,李小冉发腮,段奕宏粗犷,她太美了
-
游戏在我手|怪不得你学习一直下降,竟敢在学校找女朋友!,搞笑GIF:混小子