也可以实现
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>
推荐阅读
-
海峡快讯|美以警告莫站错队,伊扣押印度油轮亮明态度,伊朗头号油田被炸
-
中国新闻网|隔离14天参展值不值?香港企业“用脚投票”
-
-
-
LOL嘴强王者|天克脆皮与刺客,却为何一直火不起来,王者峡谷“五五开”
-
-
-
-
印度|国产手机在印度热度依然不减!销量前五占据四席
-
TA潮报|宋妍霏还是会穿,格子毛衣搭配休闲牛仔裤,身材还是那么高挑
-
孕期高危因素关乎性命!她们在帮助孕妇顺利跨过“生门”
-
时尚街拍酱搭|黄色束脚鞋让脚型更完美,纯白色连衣裙穿出小仙女的既视感
-
「红星新闻科技圈」大厂降维打击小厂机会渺茫,一季度国内5G套餐用户新增近三千万
-
「新京报」瑞幸咖啡被查?总部门店正常营业,员工正常上班
-
央企|陕视对话央企 | 哈尔滨电气集团有限公司党委书记、董事长——斯泽夫
-
-
融媒速看|发生侧翻致夫妻失踪1名消防员牺牲,3名消防员用皮艇救被困夫妻
-
-
-