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。

相关推荐
Myosotis5132 分钟前
作业 第三次
开发语言·python
学编程的闹钟3 分钟前
C语言WSAGetLastError函数
c语言·开发语言·学习
zhougl9965 分钟前
mysql数据库存储引擎
数据库·mysql·oracle
毕设源码-钟学长7 分钟前
【开题答辩全过程】以 基于springboot网络游戏账号租赁以及出售系统为例,包含答辩的问题和答案
java·spring boot·后端
阿里嘎多学长7 分钟前
2026-02-12 GitHub 热点项目精选
开发语言·程序员·github·代码托管
vx+_bysj686915 分钟前
【免费领源码】基于Springboot白隼校园音乐点歌系统 计算机毕业设计项目推荐上万套实战教程JAVA,node.js,C++、python、大屏数据可视化
java·spring boot·mysql·课程设计
C雨后彩虹17 分钟前
跨线程数据传递InheritableThreadLocal的原理
java·多线程·同步·异步·threadlocal
Ronin30518 分钟前
虚拟机数据管理模块
开发语言·c++·rabbitmq
熬了夜的程序员19 分钟前
【LeetCode】117. 填充每个节点的下一个右侧节点指针 II
java·算法·leetcode
3GPP仿真实验室19 分钟前
【Matlab源码】6G候选波形:MIMO-OFDM-IM 增强仿真平台
开发语言·网络·matlab