【发布时间】:2016-06-16 12:58:26
【问题描述】:
我输入我的aplication.properties:
spring.jackson.date-format=dd/MM/yyyy HH:mm:ss
在我的Application.java:
@Configuration
@EnableAutoConfiguration
@SpringBootApplication
@EnableConfigurationProperties
@ComponentScan
@EnableWebMvc
public class Application extends SpringBootServletInitializer
{
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
然后我创建一种方法来返回一个Date:
@RequestMapping(method = RequestMethod.GET, value = "/teste/")
public Date teste() {
return new Date();
}
所以当我调用这个方法时,我得到了这个返回:
1466081600310
而不是
16/06/2016 10:00:00(今天)
这发生在我的对象中的另一个字段上。
【问题讨论】:
-
你的控制器是如何注解的?您的
Application也不需要所有这些注释。删除除@SpringBootApplication之外的所有这些并重新启动...(实际上@EnableWebMvc可能是您的格式不起作用的事实)。 -
在我删除 @EnableMvc 后,只返回一个 Date 的方法有效,但我的对象中的 Date 没有:(
-
spring.jackson.serialization.WRITE_DATES_AS_TIMESTAMPS=false
-
不工作..问题是当springboot获取日期2016-06-16(示例)时,他转换为一个java.util.Date并转换为2016-06-16(- 3 小时)所以改为转换为 2016-06-16 00:00:00 他转换为 2016-06-15 21:00:00
标签: java spring spring-boot jackson