欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

统一和定制时间日志格式

最编程 2024-05-05 13:47:11
...

返回当前格式的时间没有错误,但是不符合中国人的阅读习惯

解决:

方案一:JsonFormat 解决后端 传到  前端格式问题

依赖:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.2</version>
</dependency>
可以在相应的类的属性上使用 @JsonFormat 注解:
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date billtime;

引入以上的pmaven依赖之后,就可以在实体类属性上面使用@JsonFormat注解了,要注意的是,它只会在声明返回类型为json时,比如使用@ResponseBody返回json数据的时候,才会返回格式化的yyyy-MM-dd HH:mm:ss时间,如果直接使用System.out.println()输出的话,仍然是类似“Fri Dec 01 21:05:20 CST 2017”这样的时间样式。

方案二:

如果是spring项目,

@DateTimeFormat是spring的注解,spring工程下不在需要额外引入其他依赖。

由于客户端传给服务端的时间参数是字符串类型,如果直接使用java.util.Date下的Date接受的话,会报400的异常(400异常表示服务器不处理该请求,多半是传入的参数问题

@DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")

方案三:

如果是 Spring Boot 项目,也可以在 application.yml 文件中指定:
spring:
    jackson:
        date-format: yyyy-MM-dd HH:mm:ss
        time-zone: GMT+8

推荐阅读