【Tools】SpringBoot工程中,对于时间属性从后端返回到前端的格式问题

发布于:2024-05-30 ⋅ 阅读:(112) ⋅ 点赞:(0)

时间属性格式问题

一、需求

对于表中时间字段,后端创建对应的实体类的时间属性需要设定格式(默认的格式不方便阅读),再返回给前端。

二、怎么使用

  1. 导入jackson相关的坐标,SpringBoot工程中,一般默认在web的starter包里面。

        <!-- Jackson Annotations -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.12.3</version> <!-- 确保版本与其他Jackson依赖一致 -->
        </dependency>
        
        <!-- Jackson Core -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.12.3</version>
        </dependency>
        
        <!-- Jackson Databind -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.12.3</version>
        </dependency>
    

    Alt

  2. 使用@JsonFormat注解,在实体类的时间属性上面添加(“设置日期的显示格式和时区”),y\m\d\h\m\s分别代别年月日时分秒

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        private Date createTime;
    
  3. 或者在SpringBoot的配置文件中配置

    spring:
      jackson:
        date-format: yyyy-mm-dd HH:mm:ss
        time-zone: GMT+8
    

tips:时间戳格式转换

     /**
         * 时间格式刷
         * @return
         */
        public static String dateBrush(){
            //获取格式刷
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

            long currentTime = System.currentTimeMillis();

            //将时间戳转换为时间类型
            Date date = new Date(currentTime);

            //调用格式刷
            String dataStr = simpleDateFormat.format(date);

            return dataStr;
        }

网站公告

今日签到

点亮在社区的每一天
去签到