问题

在Mybaits中传入参数为LocalDateTime,查询发现结果集为空,插入时发现时间相差13小时

测试

  1. 新建工程,新建测试库(主要此处新工程使用的JDBC为mysql-connector-java版本为8.0.19)
  2. 发现需要设置MyBatis版本为3.4.5以上,在3.4.5之前不支持LocalDateTime会报错
  3. 确认Mybatis版本高于3.4.5以后发现结果集还是不对
  4. 查询后发现因为Mysql时区问题,mysql-connector-java为8.0以上时会使用数据库设置的时区,而不是Java应用的时区,解决方法为设置JDBC链接添加&serverTimezone=Asia/Shanghai
  5. 测试工程结果集正确,相差13小时问题解决

其他问题

  1. 回到原有项目,确认Mybaits版本高于3.4.5
  2. JDBC链接添加&serverTimezone=Asia/Shanghai
  3. 执行后结果集不正确,插入时间错误
  4. 继续查阅资料发现mysql-connector-java数据库驱动的版本不能低于4.2,现有项目使用mysql-connector-java版本为5.1.34,数据库驱动为4.0,升级5.1.49问题解决
  5. 上一步中数据库驱动版本查看是在META-INF/MANIFEST.MF文件中

  6. 问题解决

总结

  1. 首先确认MyBatis版本为3.4.5以上,如果低于此版本可以手动添加类型转换和依赖
  2. 确认JDBC链接有时区设置,如果没有可以添加或者设置MySql默认时区
  3. 确认mysql-connector-java中MySql驱动高于4.2,可以通过升级版本解决

MyBatis使用LocalDateTime遇到的一系列问题的更多相关文章

  1. springboot~mybatis里localdatetime序列化问题

    问题起因 主要是使用mybatis作为ORM之后,返回的对象为Map,然后对于数据库的datetime,datestamp类型返回为时间戳而不是标准的时间,这个问题解决方案有两种,大叔分析一下: 在m ...

  2. SpringBoot Mybatis 使用LocalDateTime

    mybatis-spring-boot-starter 2.0.1 会报错,不知道如何解决(建议先不用) mybatis-spring-boot-starter 2.0.1 - 1.3.2 版本不会报 ...

  3. LocalDatetime 与 mybatis、json的坑

    总所周知,localdatetime是jdk8 推出的关于日期计算非常方便地一个类,一旦开始用上就欲罢不能.但是在使用的时候,坑还是蛮多的. 一.mybatis与LocalDatetime 如果直接将 ...

  4. LocalDateTime整合到SpringBoot + MyBatis中

    啥也不说先贴两个代码: 一:MVC层配置 @Configuration public class JacksonConfig { /** 默认日期时间格式 */ public static final ...

  5. 深入理解Mybatis技术与原理

    目录 第1章 Mybatis简介 1.1 传统的JDBC编程 1.2 ORM模型 1.4 MyBatis 1.5 什么时候用MyBatis 第2章 MyBatis入门 2.2 MyBatis构成 2. ...

  6. mybatis的typeHandler

    typeHandler作用: 1.传参时将javaType类型转换成jdbcType 2.结果集中ResultSet中取值时,jdbcType转换为javaType; 系统自定义的typeHandle ...

  7. 《深入浅出MyBatis技术原理与实战》——3. 配置

    要注意的是上面那些层次是不能够颠倒顺序的,否则MyBatis在解析文件的时候就会出现异常. 3.1 properties元素 properties是一个属性配置元素,让我们能在配置文件的上下文中使用它 ...

  8. fastjson反序列化LocalDateTime失败的问题java.time.format.DateTimeParseException: Text '2019-05-24 13:52:11' could not be parsed at index 10

    本地java类 import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; ...

  9. 精尽 MyBatis 源码分析 - 整体架构

    该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...

随机推荐

  1. 史上最全SpringBoot整合Mybatis案例

    摘要:如果小编说,SpringBoot是目前为止最好的框架,应该没有人会反驳吧?它的出现使得我们很容易就能搭建一个新应用.那么,SpringBoot与其他第三方框架的整合必定是我们需要关注的重点. 开 ...

  2. nc - 网络工具箱中的「瑞士军刀」

    nc 是 Linux下强大的网络命令行工具,主要用于 TCP.UDP.UNIX域套接字 相关的操作 它被设计成可以由其他程序灵活驱动可靠的后台工具,拥有 "瑞士军刀" 的美称,每个 ...

  3. web自动化 -- Select(下拉选择框操作)

    目标:(现在 select 这种已经很少了.一般都是  ul/li 或者 span/svg) 代码示例:

  4. chrome浏览器hover时文字抖动bug

    今天发现一个奇怪的bug,chrome浏览器里面  当父标签定位为fixed时,hover里面子标签时,文本会发生抖动,百思不得其解,经过多方查证,发现解决办法 -webkit-transform:  ...

  5. 关于页面布局中,如何让一个div水平和垂直居中的五个方案

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Shell分析服务器日志,解锁各种新姿势

    1.查看有多少个IP访问: awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数: grep "/index.php" ...

  7. MySQL Front远程连接数据库

    连接前需要先配置一下服务器端的数据库 进入mysql数据库,选择mysql mysql> use mysql; 选择 host 表 mysql> select host from user ...

  8. Java数据结构和算法(2)之稀疏数组

    1.定义 稀疏数组可以看做是普通二位数组的压缩,但是这里说的普通数组是值无效数据量远大于有效数据量的数组,关于稀疏数组的运用有五子棋盘,地图等.. *当一个数组中大部分元素为0,或者为同一个值的数组时 ...

  9. Java容器学习之List

    List接口继承了Collcetion接口,Collection接口又继承了超级接口Iterable,List是有序列表,实现类有ArrayList.LinkedList.Vector.Stack等. ...

  10. MAVEN无法下载com.oracle:jdbc14:jar解决办法

    原文链接:https://www.cnblogs.com/gqzdev/p/11742999.html 第一步,下载ojdbc14jar包: 链接:ojdbc14jar 提取码: 2m59 第二步,下 ...