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。

相关推荐
qq_433554542 分钟前
C++ 稀疏表
开发语言·c++·算法
数据知道6 分钟前
FastAPI项目:从零到一搭建一个网站导航系统
python·mysql·fastapi·python web·python项目
G皮T7 分钟前
【Java】Java 运行时数据区域(一):名词概念
java·jvm·runtime·运行时·运行时数据区域
z***y86219 分钟前
Java数据挖掘开发
java·开发语言·数据挖掘
鱼锦0.022 分钟前
基于spring+vue把图片文件上传至阿里云oss容器并回显
java·vue.js·spring
從南走到北27 分钟前
JAVA国际版同城跑腿源码快递代取帮买帮送同城服务源码支持Android+IOS+H5
android·java·ios·微信小程序
q***098030 分钟前
Spring Boot 2.7.x 至 2.7.18 及更旧的版本,漏洞说明
java·spring boot·后端
软件开发技术深度爱好者38 分钟前
Python库/包/模块管理工具
开发语言·python
Leon-Ning Liu38 分钟前
MySQL 5.7大表索引优化实战:108GB数据建索引效率提升50%
运维·数据库·mysql
q***146441 分钟前
oracle 12c查看执行过的sql及当前正在执行的sql
java·sql·oracle