还在实体类中用Date?JDK8新的日期类型不香么?

本文讨论了在实体类中使用日期时,从JDK7的Date和Calendar转向JDK8新日期类型的必要性。JDK8的LocalDate和DateTimeFormatter提供了更直观、线程安全的日期处理方式,简化了日期转换和格式化的代码,增强了代码安全性。
摘要由CSDN通过智能技术生成

今天想介绍的,就是我们再实体类中,很多时候会用到时间这个概念,比如说,记录的创建时间Create_Time或者说是某些需要确定的日期,在数据库存储的时候,毋庸置疑,肯定是 datetime和date的数据类型,但是也有个别的比较过分,直接是用字符串,也就是varchar来进行存储,而我们在之前是用JDK7的时候,我们创建时间的时候,很多时候都选择的时比较老版本的 Date、Calendar 以及 SimpleDateFormatter 等等。

不过 java.util.Date 也是被诟病已久,它包含了日期、时间、毫秒数等众多繁杂的信息,其内部利用午夜 12 点来区分日期,利用 1970-01-01 来计算时间;并且其月份从 0 开始计数,而且用于获得年、月、日等信息的接口也是太不直观。

除此之外,java.util.Date与 SimpleDateFormatter 都不是类型安全的,

而我们接下来要使用的,就是 JDK8 中的日期,用来替换掉之前使用的。

JDK7 的日期 和 JDK8 的日期对比

JDK7 创建一个时间

Date date0 = new Date();

JDK8 创建一个时间

LocalDate today = LocalDate.now();

我们先看看这执行出来都是啥?

Date输出:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值