一、前言

之前已经有一篇文章讨论过SpringBoot整合MyBatis,因而此篇不在重复累赘,本文主要是最新版的SpringBoot2.0与MyBatis、最新MySQL8.0整合过程中遇到的问题进行总结。同时,SpringBoot整合MyBatis中可以不用之前那篇那样繁琐的配置,可以使用application.properties文件进行整合。

二、application.yml 与 application.properties 加载顺序

SpringBoot优先加载yml文件,也就是先加载yml文件再加载properties文件。两个文件都可以起到同时配置全局的作用。如果在yml文件中配置了端口为80,在properties文件中配置了8080,那么最后端口是8080,因而properties后加载,覆盖了之前已经配置后的80端口。

其实 application.yml 文件会被优先加载,

而如果同时存在 application.properties 文件,并且存在相同的配置,

那么则会用 application.properties 文件中的配置覆盖之前的配置;

也就是说哪个文件被最后加载,哪个才具有最高级别,

因为最后的,会覆盖前面所有的。

---------------------

作者:微wx笑

来源:CSDN

原文:https://blog.csdn.net/testcs_dn/article/details/79010798

版权声明:本文为博主原创文章,转载请附上博文链接!

三、application.properties示例

#设置Tomcat端口,默认8080

server.port=8080

#设置项目ContextPath

server.context-path=/

#设置Tomcat编码

server.tomcat.uri-encoding=UTF-8

#设置视图解析器路径

spring.mvc.view.prefix=/WEB-INF/views/

#设置视图解析器后缀

spring.mvc.view.suffix=.jsp

#数据库配置

spring.datasource.url=jdbc:mysql://localhost:3306/tuzisong?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true

spring.datasource.username=root

spring.datasource.password=F6m3G3j6

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#配置.xml文件路径

mybatis.mapper-locations=classpath:mapper/*.xml

#配置模型路径

mybatis.type-aliases-package=cn.copy.model

MyBatis通过上述两行,便可在Resource的mapper中读取xml文件和对应的实体类,如果数据库使用的MySQL8.0,加载类需要更改,下文有论述。

如果想了解整体的配置,文件目录结构,详细可以参考该示例的原文:[1]

四、使用MySQL8.0

使用MySQL8.0的时候会出现兼容性的问题。

1、数据库连接工具无法连接[2]

mysql8.0默认采用caching_sha2_password的加密方式

第三方客户端基本都不支持这种加密方式,只有自带的命令行支持

所以需要修改加密方式。在MySQL自带的客户端client中输入如下命令:

ALTER USER 'username'@'ip_address' IDENTIFIED WITH mysql_native_password BY 'password';

示例:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

2、SpringBoot通过jdbc无法连接到MySQL

先更换最新的jar包(当前最新为2018-09-27,8.0.13),在maven中添加如下依赖:

mysql

mysql-connector-java

8.0.13

同时,application.xml中配置文件中应该改为:

url: jdbc:mysql://localhost:3306/db_test?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true

driver: com.mysql.cj.jdbc.Driver

详细内容可以参考文章[3]

五、后言

本文需要对SpringBoot与MyBatis有一定的了解,时代在向前,版本在更新,在重新整合的过程中遇到的各种问题,集合各方的观点与解决方案,总结形成此文。

Reference:

[3] Xanthuim, MySQLNonTransientConnectionException: Could not create connection to database server., https://blog.csdn.net/qq_15003505/article/details/80463174

mysql8.0用mybatis哪个版本_SpringBoot整合MyBatis与MySql8.0相关推荐

  1. mybatis 一对多_Springboot整合Mybatis实现级联一对多CRUD操作

    在关系型数据库中,随处可见表之间的连接,对级联的表进行增删改查也是程序员必备的基础技能.关于Spring Boot整合Mybatis在之前已经详细写过,不熟悉的可以回顾Spring Boot整合Myb ...

  2. mybatis generator使用_SpringBoot整合Mybatis实现自动生成代码 || 附阿里P8独家SpringBoot视频资料...

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. MyBatis 可以使用简单的 XM ...

  3. mybatis注册了mapper但是还是报错_springboot整合Mybatis

    五.springboot整合Mybatis 官方文档:http://mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/ ...

  4. mybatis支持驼峰自动转换sql吗_SpringBoot整合mybatis——配置mybatis驼峰命名规则自动转换...

    一.简述 mybatis驼峰式命名规则自动转换: 使用前提:数据库表设计按照规范"字段名中各单词使用下划线"_"划分": 使用好处:省去mapper.xml文件 ...

  5. 【Java从0到架构师】Spring - 整合 MyBatis

    整合 MyBatis 整合 MyBatis - 依赖 整合 MyBatis - 数据源 整合 MyBatis - SqlSessionFactoryBean 整合 MyBatis - MapperSc ...

  6. springboot update数据_SpringBoot整合Mybatis+Druid+数据库(注解版)

    运行展示 正题 Spring boot :2.1.5RELEASE :数据库(Mysql.Oracle):Mybatis:阿里云的连接池 : Druid : 步骤 1.POM依赖 <!-- My ...

  7. springboot如何对本地数据库增删改查_SpringBoot整合Mybatis实现数据库增删改查

    接下来我们需要在application.properties配置文件中配置Durid数据库连接池.本机需安装mysql数据库,一下配置为小编本机的数据库配置,数据库名为test,用户名为root,密码 ...

  8. springboot动态切换数据源_Springboot整合Mybatis注解实现动态数据源切换

    AbstractRoutingDataSource AbstractRoutingDataSource是spring-jdbc包提供的一个了AbstractDataSource的抽象类,它实现了Dat ...

  9. android 8.0手机无法更新版本,安卓手机升级安卓8.0后 系统以后可能都无法回退

    ­ 你升级安卓8.0了吗?从谷歌发布正式算起,已经4个月过去了,然而根据官方的统计,现在的渗透率甚至1%都还不到. ­ 为了推广升级,谷歌宣布安卓8.0之初就希望能推广Project Treble特性 ...

最新文章

  1. 面试官:说说你知道的几种负载均衡分类
  2. python操作gif
  3. SAP关于销售来自可选工厂的解决方案
  4. 【项目管理】ITTO-相关方管理
  5. 基于CkEditor实现.net在线开发之路(1)
  6. c语言综合程序设计问答题,C语言程序设计综合习题题目.doc
  7. 在 Microsoft Word 文档 中粘贴代码实现语法高亮的方法
  8. 模拟光端机和数字光端机的优缺点介绍
  9. win10修改服务器IP,Win10系统更改本地连接ip地址的方法
  10. 查看计算机数字证书,数字证书认不到怎么办?
  11. c++使用POP协议接收以及解析邮件
  12. ROBOMASTER机甲大师赛视觉组学习方案
  13. 如何设置WiFi密码才不会被WiFi万能钥匙破解
  14. 设计模式~调停者(中介)模式-06
  15. halcon学习_超人启蒙班10-20课
  16. python 多态 知乎_Python鸭子类型和多态
  17. 通过js实现页面布局
  18. 导图解文 从梦想到财富(39)正确的创业方向,都落在3个必然趋势中
  19. Windows10 pc使用Apple Studio Display显示器设置
  20. 星巴克(SBUX)2020年第四季度收益电话会议记录

热门文章

  1. html 滚动条_数十种自定义多彩多样滚动条样式
  2. 华为旗舰陆续升级鸿蒙系统,华为鸿蒙重磅来袭:今年4月起 华为旗舰手机将陆续升级鸿蒙系统!...
  3. php 如何实现表格行列的对齐,excel怎样把每列文字对齐
  4. sqlite3 内存持续增加_sqlite3使用简介(内含解决sqlite内存的方法)
  5. n76e003引脚图_N76E003的学习之路(一)
  6. 皮一皮:中国好邻居!
  7. 皮一皮:最头铁的汪峰...
  8. 每日一皮:举一反三,这么聪明的客户可不多见了...
  9. 每日一皮:这个不要轻易尝试,执行有生命危险
  10. Redis+分布式+设计模式+Spring全家桶+Dubbo阿里P8技术精选文档