Java 接收 MySQL datetime 类型日期字段输出格式问题


前言

不管世事多艰难,别忘了,看开点儿,再温柔点儿,不要满身戾气,也不要紧皱眉头,生活都是在你眉开眼笑的时候,一天天好起来的。


Java 与 MySQL 类型对应

在这里插入图片描述

Java定义类型String,数据定义的日期字段是datetime,由于有些时候日期数据存入时,可以通过后端自己创建,而取出数据也不通过JSON返回,所以注解在获取实体类字段上,无法满足。

注解操作

public class ClassA{
    private String itemCode;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date deadline;
}

注解@JsonFormat主要是后台到前台的时间格式的转换

注解@DataFormAT主要是前后到后台的时间格式的转换

pattern:是你需要转换的时间日期的格式
timezone:是时间设置为东八区,避免时间在转换中有误差
提示:@JsonFormat注解可以在属性的上方,同样可以在属性对应的get方法上,两种方式没有区别

代码格式转换

如果Java中是String接MySQL datetime的数据,有两种解决方案:
通过SQL改写返回带有格式的日期字段

Select DATE_FORMAT(`Deadline`, "%y-%m-%d %H:%i:%s") as deadline From table

通过逻辑改写Date Mon Mar 14 11:08:25 GMT+08:00 2022

String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
System.out.println(timeStamp);

建议将日期格式转换及日期操作的独立写个工具类,也可以慢慢收集遇到不错的日期工具类


参考

链接: https://blog.csdn.net/andyliulin/article/details/82055644.
链接: https://blog.csdn.net/qq_27198345/article/details/112605258.
链接: https://www.cnblogs.com/mracale/p/9828346.html.

  • 8
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值