zoukankan      html  css  js  c++  java
  • springboot+mybatis 多数据库支持

    1.配置application.yml

    mybatis:
    mapper-locations: classpath:/mybatis/mapping/*.xml
    configuration:
    map-underscore-to-camel-case: true #开启驼峰命名
    database-id: ${database.type}
    type-aliases-package:
    com.mtwl.entity

    注意database-id 的配置
    2.在springboot中配置DatabaseIdProvider
    @Bean
    public DatabaseIdProvider getDatabaseIdProvider(){
    DatabaseIdProvider databaseIdProvider = new VendorDatabaseIdProvider();
    Properties properties = new Properties();
    properties.setProperty("Oracle","oracle");
    properties.setProperty("MySQL","mysql");
    properties.setProperty("DB2","db2");
    properties.setProperty("Derby","derby");
    properties.setProperty("H2","h2");
    properties.setProperty("HSQL","hsql");
    properties.setProperty("Informix","informix");
    properties.setProperty("Microsoft SQL Server","sqlserver");
    properties.setProperty("PostgreSQL","postgresql");
    properties.setProperty("Sybase","sybase");
    properties.setProperty("Hana","hana");
    databaseIdProvider.setProperties(properties);
    return databaseIdProvider;
    }
    注意:数据库版本是否正确
    3.在mapper.xml中使用
    方法1
    <select id="selectTop" resultType="java.util.Map" parameterType="java.lang.Integer" databaseId="sqlserver">
    select top(#{value})*
    from kcjs
    </select>

    <select id="selectTop" resultType="java.util.Map" parameterType="java.lang.Integer" databaseId="mysql">
    select *
    from kcjs limit 0,#{value}
    </select>



    方法2
    <select id="selectTop" resultType="java.util.Map" parameterType="java.lang.Integer">
    select
    <if test="_databaseId==sqlserver">
    top(#{value})*
    from kcjs
    </if>
    <if test="_databaseId==mysql">
    *
    from kcjs limit 0,#{value}
    </if>

    </select>
     
  • 相关阅读:
    备忘--ruby相关
    Redhat下安装ruby
    ubuntu装机相关设定及问题系列(6)
    ubuntu装机相关设定及问题系列(5)
    备忘--ubuntu装机历程
    备忘--ubuntu10下安装ruby和cucumber
    jQuery--checkbox全选/取消全选
    经常用的Jquery图片轮转
    JavaScript js 兼容浏览器问题 兼容Fire
    net页面生命周期
  • 原文地址:https://www.cnblogs.com/binkai/p/12119283.html
Copyright © 2011-2022 走看看