Java的LocalDataTime与Date和mysql中的datatime和data的关系

LocalDataTime 与Data区别

  1. LocalDatatime是Java8引入的新类型,属于Java8日期时间API,Data是旧版的日期API
  2. 不可变性:LocalDataTime是不可变类,一旦创建后就不能修改,需要修改只能创建新的对象,Data是可变类,可以直接修改
  3. 时区处理:Data类在内部便是日期和时间的同时会考虑当前系统的时区,LocalDataTime是不带时区的信息的类,只表示日期和时间没有时区的概念
  4. 精确度:Data类精确到毫秒级别,但是设计存在问题,存在线程问题,而LocalDataTime精确度可以精确到纳秒级别。

mysql中的data和datatime区别

  • data类型:用于需要一个日期而不需要时间部分时,
  • datatime:用于同时包含日期和时间信息的值

注意

在jdk1.8中使用Data类,数据库中使用 datatime类型时会存在以下bug:

复制代码
Cannot set createTime: incompatible types, cannot convert java.time.LocalDateTime to java.util.Date

大致意思是:LocalDataTime类型数据不能转换为Data类型,但是可以通过将数据中的datatime修改为data,但是将java中的Data类型修改为LocalDataTime会出现,java8不支持LocalDatatime,到这人已经麻了,网上看别人出现该问题可以通过修改mysql驱动,换用更低版本的驱动解决,但是我这里并没有解决。经过测试在jdk17的环境下没有出现上述BUG。

相关推荐
阿坤带你走近大数据几秒前
分别介绍下java主流的开发框架、设计模式与对应编程语言的高级特性
java·开发语言·设计模式
这个人需要休息1 分钟前
优惠卷类型漏洞---优惠卷的并发使用
mysql·网络安全·逻辑漏洞·后端架构
小小龙学IT2 分钟前
Go 后端开发中的并发模式:从 Goroutine 到 Pipeline 实战
开发语言·后端·golang
小短腿的代码世界3 分钟前
Qt文本布局引擎深度解析:从QTextDocument排版到渲染的完整架构
开发语言·qt·架构
Leweslyh6 分钟前
《3GPP TS 28.312 面向移动网络的意图驱动管理服务》完整自学教程
开发语言·网络·php
2501_930707787 分钟前
使用 C# 在 Excel 中合并并居中单元格
开发语言·c#·excel
番茄去哪了9 分钟前
一篇文章讲懂SDN
java·spring
aidou13149 分钟前
Kotlin中自定义RadioGroup实现多个RadioButton自动换行
android·开发语言·kotlin·shape·radiobutton·selector·radiogroup
小短腿的代码世界11 分钟前
Qt Firebase集成深度解析:移动与嵌入式云后端解决方案
开发语言·qt
小二·11 分钟前
MySQL 8.0 性能优化与索引原理
android·mysql·性能优化