沉梦听雨的编程指南 沉梦听雨的编程指南
首页
  • 基础篇
  • 集合篇
  • 并发篇
  • JVM
  • 新特性
  • 计算机网络
  • 操作系统
  • 数据结构与算法
  • 基础篇
  • MySql
  • Redis
  • 达梦数据库
  • Spring
  • SpringBoot
  • Mybatis
  • Shiro
  • 设计须知
  • UML画图
  • 权限校验
  • 设计模式
  • API网关
  • RPC
  • 消息队列
  • SpringCloud
  • 分布式事务
  • 云存储
  • 搜索引擎
  • 多媒体框架
  • 虚拟机
  • 开发工具篇
  • 工具库篇
  • 开发技巧篇
  • 工具类系列
  • 随笔
  • 前端环境搭建
  • HTML与CSS
  • JS学习
  • Vue3入门
  • Vue3进阶
  • 黑马Vue3
  • 脚手架搭建
  • 瑞吉外卖
  • 黑马点评
  • vue-blog
  • 沉梦接口开放平台
  • 用户中心
  • 聚合搜索平台
  • 仿12306项目
  • 壁纸小程序项目
  • RuoYi-Vue
  • 博客搭建
  • 网站收藏箱
  • 断墨寻径摘录
  • 费曼学习法
Github (opens new window)

沉梦听雨

时间是最好的浸渍剂,而沉淀是最好的提纯器🚀
首页
  • 基础篇
  • 集合篇
  • 并发篇
  • JVM
  • 新特性
  • 计算机网络
  • 操作系统
  • 数据结构与算法
  • 基础篇
  • MySql
  • Redis
  • 达梦数据库
  • Spring
  • SpringBoot
  • Mybatis
  • Shiro
  • 设计须知
  • UML画图
  • 权限校验
  • 设计模式
  • API网关
  • RPC
  • 消息队列
  • SpringCloud
  • 分布式事务
  • 云存储
  • 搜索引擎
  • 多媒体框架
  • 虚拟机
  • 开发工具篇
  • 工具库篇
  • 开发技巧篇
  • 工具类系列
  • 随笔
  • 前端环境搭建
  • HTML与CSS
  • JS学习
  • Vue3入门
  • Vue3进阶
  • 黑马Vue3
  • 脚手架搭建
  • 瑞吉外卖
  • 黑马点评
  • vue-blog
  • 沉梦接口开放平台
  • 用户中心
  • 聚合搜索平台
  • 仿12306项目
  • 壁纸小程序项目
  • RuoYi-Vue
  • 博客搭建
  • 网站收藏箱
  • 断墨寻径摘录
  • 费曼学习法
Github (opens new window)
  • 开发工具篇

  • 工具库篇

  • 开发技巧篇

    • 常见数据校验注解
    • 字符串拼接的5种方式
    • 遍历集合的N种方式
    • 集合使用注意事项总结
    • 字符串处理最佳实践
    • 时间字段处理小记
      • 实体类相关注解
      • Date 字段格式化处理
        • SimpleDateFormat
        • get 方法重写
        • hutool 工具类
    • Curl用法解析
    • 列表分页的两种实现方案
    • HashMap根据value获取key
    • Map的7种遍历方式
    • 正则表达式
    • 二维码扫码登录学习
    • 脱敏最佳实践
    • 实时汇率获取
    • System-getProperty方法获取属性
    • 文件url转Base64编码
  • 工具类系列

  • 随笔

  • 开发日常
  • 开发技巧篇
沉梦听雨
2023-11-14
目录

时间字段处理小记

# 时间字段处理小记

# 实体类相关注解

常见注解如下:

@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
// 和
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
1
2
3

具体说明:

  1. @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") 注解通常在接收前端参数时使用,用于告诉框架如何将传递的日期时间字符串转换为 Date 类型的对象。

    例如,当你在控制器方法中接收前端传递的日期时间参数时,可以使用该注解来指定日期时间字符串的格式,以确保正确地解析为 Date 对象。

  2. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") 注解通常在将对象序列化为 JSON 格式响应给前端时使用,用于指定日期时间字段在序列化为 JSON 时的格式。

    通过该注解,你可以确保响应中的日期时间字段以指定的格式进行格式化,以便前端能够正确地解析和显示。

建议:

个人感觉可以都用,有时候需要打印请求体参数或者需要序列化参数的时候,没有 @JsonFormat 会报错。

总结:

  1. 一个是在处理接收前端参数的时候用到(@DateTimeFormat)
  2. 一个是序列化响应给前端的时候用到(@JsonFormat)

注意:

  • GET 请求中,请求体的时间字段不能用 @JsonFormat,需要使用 @DateTimeFormat
  • 因为 GET 请求的日期是拼接在 URL 里的,需要用 spring 自带的 @DateTimeFormat(pattern="yyyy-MM-dd"),后端才能接收到参数。
  • @JsonFormat 有默认时区,用 String 接收参数或者响应数据时,不用设置时区;用 Date 时需要设置时区。

# Date 字段格式化处理

方法如下:

# SimpleDateFormat

1、在需要时进行转换

            // ...

					 // item.getAlarmTime() 返回的是一个 Date 对象
            Date alarmTime = item.getAlarmTime(); 
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String formattedTime = sdf.format(alarmTime);

            // ...
1
2
3
4
5
6
7
8

# get 方法重写

2、在实体类中重写 get 方法

    public String getAlarmTime() {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return sdf.format(alarmTime);
    }
1
2
3
4

# hutool 工具类

3、DateUtil.format() 方法

DateUtil.format(record.getDate(), "yyyy年MM月dd日")
1
上次更新: 2024/9/25 11:16:13
字符串处理最佳实践
Curl用法解析

← 字符串处理最佳实践 Curl用法解析→

Theme by Vdoing | Copyright © 2023-2025 沉梦听雨 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式