mysql和oracle数据库部分语法不相同,为了适配两种数据库(修改配置文件方式),可以先操作sql,然后通过代码级别再实现。比如oracle限制返回的条数:rownum<=1 但是mysql的语法是:limit 1,你可以通过返回所有数据,然后再get(0)去除第一条数据,

今天的重点:springcloud+tk.mybatis+oracle/mysql

1.先上依赖:

父工程部分依赖:

复制代码

org.springframework.boot
spring-boot-starter-parent
2.2.2.RELEASE

复制代码

<?xml version="1.0" encoding="UTF-8"?>

com.xxx
xxxxxxxx
0.0.1-SNAPSHOT

4.0.0
xxxxx-xxxx
xxxx-xxxxx

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>${springboot.version}</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>${springboot.version}</version><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency><!-- 数据库配置 start--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>2.1.5</version></dependency>
    <!--            <groupId>com.baomidou</groupId>--><!--            <artifactId>mybatis-plus</artifactId>--><!--            <version>2.3</version>--><!--        </dependency>--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-autoconfigure</artifactId><version>1.3.2</version></dependency><dependency><groupId>com.zhdgps.oracle</groupId><artifactId>ojdbc6</artifactId><version>11.2.0.1.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.9</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.9</version></dependency><!-- 数据库配置 end --><!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper-spring-boot-starter --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.13</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.21</version></dependency><!-- 注册中心 start--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>
    <!-- 注册中心 end--><!-- swagger start --><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.9.2</version></dependency><!-- swagger end --><!-- jwt --><dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>3.10.0</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.10</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.6</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.62</version></dependency><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-redis</artifactId><version>${springboot.version}</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId><version>2.9.0</version></dependency><!-- https://mvnrepository.com/artifact/redis.clients/jedis --><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.3.0</version></dependency><!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.11</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>5.2.9.RELEASE</version><scope>compile</scope></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.8.0</version><scope>compile</scope></dependency>
</dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${springboot.version}</version><configuration><!-- 指定该Main Class为全局的唯一入口 --><mainClass>com.zhd.eoms.EomsApplication</mainClass>
            </configuration><executions><execution><goals><goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中--></goals></execution></executions></plugin></plugins>
</build>

复制代码 根据上面的依赖选择,不要都贴上,

然后使用mybatis-generator自动生成entity、mapper和xml映射文件,

然后就是今天的重点:怎样配置数据库id的类型

第一种:自增ID,可以这样配置:

@Id
@Column(insertable = false, name = "ID")
@GeneratedValue( generator = "JDBC")
private Integer id;

这样oracle和mysql都适用;

自增适合哪种经常查询信息,因为id是天然有序,效率高一些,

如果是UUID:

@Id
@Column(name = "ID")
@KeySql(genId = UUIDGenId.class)

复制代码
public class UUIDGenId implements GenId{
@Override
public String genId(String s, String s1) {
return UUID.randomUUID().toString().replace(“-”,“”);
}
}
复制代码
UUIDGenId 类
复制代码
public class UUIDGenId implements GenId{//
@Override
public String genId(String s, String s1) {
return UUID.randomUUID().toString().replace(“-”,“”);
}
}

springcloud适配mysql和oracle数据库相关推荐

  1. Mybatisplus代码生成 之SpringBoot适配MYSQL和ORACLE

    Mybatisplus代码生成 之SpringBoot适配MYSQL和ORACLE 文章目录 前期准备: 看图操作,一路下一步 1. 导入相关依赖 2. 新建代码生成类MysqlGenerator 2 ...

  2. Mysql和Oracle 数据库操作工具类

    适配Mysql和Oracle数据源 文章目录 1. 适配Mysql和Oracle数据源 2. 适配于Mysql数据源 3. 适配Oeacle数据源 1. 适配Mysql和Oracle数据源 packa ...

  3. mysql 读取oracle_RobotFramework读取mysql和oracle数据库

    一.robotframework连接mysql数据库 1.安装databaselibrary.pymysql 通过cmd命令执行:pip install robotframework-database ...

  4. mysql,oracle数据库优化之索引

    mysql,oracle数据库优化之索引,分库分表,表分区,本地索引,全局索引 数据库引擎 数据库索引 索引类型 主键索引 唯一索引 普通索引 全文索引 位图索引(oracle数据库才有) 在哪些列上 ...

  5. jsp mysql oracle_Jsp 连接 mySQL、Oracle 数据库备忘

    Jsp 连接 mySQL.Oracle 数据库备忘 2009-12-15 16:47 Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没 ...

  6. oracle数据库需要的端口号,SQL Server数据库、MySQL、Oracle数据库各自的默认端口号...

    我们今天主要向大家讲述的是SQL Server数据库.MySQL.Oracle数据库各自的默认端口号,以下就是对SQL Server数据库.MySQL.Oracle数据库各自的默认端口号的描述,望在你 ...

  7. 人大金仓适配mysql和oracle函数适配

    oracle jdbc配置: jdbc.validationQuery=SELECT COUNT(*) FROM DUAL jdbc.driverclass=oracle.jdbc.driver.Or ...

  8. mysql和Oracle数据库的一些异同。

    1.WHERE字句的LIKE条件中通配符. Oracle和mysql都支持%和_两个通配符,前者匹配任意个任意字符,后者匹配最多一个任意字符.但在处理本意字符%和_时,就很不相同了.mysql可以用转 ...

  9. RobotFramework读取mysql和oracle数据库

    一.robotframework连接mysql数据库 1.安装databaselibrary.pymysql 通过cmd命令执行:pip install robotframework-database ...

最新文章

  1. gis 大屏_胡中南:Web端GIS技术新进展 | (PPT+速记)
  2. Fiddler使用总结一(使用Fiddler捕获手机所有http/https通信)
  3. matlab GUI gca gco gcf
  4. python开发移动应用_什么是移动应用开发的最佳编程语言?(一)Python?c++?
  5. 初识jvm-1.Java类的加载机制
  6. 计算机组成原理——总线结构
  7. 【C++ grammar】常量、指针、Usage of using, typedef, and #define
  8. shell正则表达式截取字符串_从CVE20208816聊聊shell参数扩展
  9. HDU--1054--Strategic Game【最小点覆盖】
  10. 安卓listview点击空白事件_王者荣耀安卓苹果ios改空白名;重复名字特殊昵称教程...
  11. lib、dll文件的中函数的查看与lib、dll、pdb文件的介绍
  12. 这九年来都在干嘛-兄弟连IT教育
  13. ubuntu16.04 gnome环境,怎么样下载使用monaco字体
  14. 学习Java技术Eclipse版本的选择
  15. 【AllenNLP入门教程】: 2、基于Allennlp2.4版本的一些使用技巧
  16. win10前置耳机插孔没声音_iqoo耳机突然没声音-杰讯手机维修中心
  17. 分支限界 java_0035算法笔记——【分支限界法】布线问题
  18. 图文展示目标检测的现代发展历史
  19. 搭建公司wiki系统
  20. 【一】微信公众号之扫码登录

热门文章

  1. 颜色类中英文词汇大全(4)
  2. 彻底搞懂基于Open3D的点云处理教程!
  3. HPE牵手CSC,打造DXC延承HP百年家规
  4. OpenAI Codex,GitHub Copilot 和cheat.sh 三个代码建议工具对比
  5. 搭建国产化麒麟kylinos操作系统虚拟机
  6. 数学之美:拼音输入法的数学原理
  7. Fri Oct 7 10:08:00 UTC 0800 2016日期格式转换为 yyyy-mm-dd hh24:mi:ss (Map实现版)
  8. 魔坊APP项目-17-种植园,商城页面、服务端提供商品api,解决App打包编译以后的跨域限制、客户端获取商品列表并进行展示,集成Alipayplus模块完成支付
  9. 博客——使用 Redis 实现博客编辑的自动保存草稿功能
  10. 【寻找最佳小程序】04期 :探访“小打卡”产品打磨细节及线下场景真实应用...