【MybatisPlus】对数据库中datetime类型字段的处理(获取与格式处理) ...

打印 上一主题 下一主题

主题 1016|帖子 1016|积分 3048

        数据库中Datetime类型字段可以对应Java实体类中的Date数据类型或LocalDateTime数据类型。但这两种数据类型直接却有着很大的区别,被用在差别的应用场景中。(一般保举使用LocalDateTime,有更多的灵活性和功能)

  1. private Date createTime;
  2. private Date updateTime;
  3. // 或者
  4. private LocalDateTime createTime;
  5. private LocalDateTime updateTime;
复制代码
  一、Data数据类型与LocalDateTime数据类型的区别
          Date数据类型属于java.util包,是Java的一个日期和时间类,它代表特定时刻的时间戳,存储的是自1970年1月1日以来的毫秒数,但不包含时区信息,对时区不敏感。且Date数据类型是可变的,可以通过setTime(long time)来设置时间戳。
        LocalDateTime数据类型属于java.time包,是Java 8引入的新日期和时间API的一部分,它代表了一个日期和时间,但没有时区信息,若要处理时区信息可以使用ZonedDateTime类。而LocalDateTime数据类型不可变,一旦创建LocalDateTime对象,它的值将不会改变。若想要修改值,只能创建一个新的LocalDateTime对象。
        LocalDateTime的根本使用可以看下面这篇文章:
【Java LocalDateTime】LocalDateTime获取时间信息、格式化、转换为数字时间戳
https://blog.csdn.net/zxy2361380031/article/details/134344872
   二、对时间类型数据输出信息的格式化
   这里需要引入jackson依赖来format时间的数据类型:
  1. <!-- jackson -->
  2. <dependency>
  3.     <groupId>com.fasterxml.jackson.core</groupId>
  4.     <artifactId>jackson-databind</artifactId>
  5.     <version>2.15.3</version>
  6. </dependency>
复制代码
         方法一:  (全局配置)
        在springBoot的配置文件中添加以下代码可以实现全局配置:
  1. # application.properties的配置如下:
  2. spring.jackson.date-format=yyyy-MM-dd HH:mm:ss # 时间格式
  3. spring.jackson.time-zone=GMT+8                 # 时区
复制代码
  1. # application.yaml的配置如下:
  2. spring:
  3.   jackson:
  4.     date-format: yyyy-MM-dd HH:mm:ss # 时间格式
  5.     time-zone: GMT+8                 # 时区
复制代码
        方法二:  (对字段分别设置)
        通过对字段添加@JsonFormat注解来设置该字段的时间格式,比力繁琐,但更加灵活。
  1. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
  2. private LocalDateTime startTime;
  3. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
  4. private LocalDateTime endTime;
复制代码
  三、格式
  
yyyy
MM
dd
HH
mm
ss





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

道家人

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表