我經由暴露下面Map
一個@RestController
Servlet
:如何在Spring中註冊java.sql.Timestamp的全局格式化程序?
List<Map<String, Object>> results = jdbcTemplate.queryForList(..);
地圖然後包含java.sql.Timestamp
對象。
問題:如何設置Spring
和jaxb/jackson
爲Timestamp
生成的輸出格式?我想在全球範圍內設置它。我不想看地圖來手動檢測並重新設置這些值的格式。
以下沒有工作:序列化JSON期間
@Configuration
public class DateConfig extends WebMvcConfigurerAdapter {
@Override
public void addFormatters(FormatterRegistry registry) {
super.addFormatters(registry);
registry.addFormatterForFieldType(java.sql.Timestamp.class, new Formatter<Timestamp>() {
@Override
public String print(Timestamp object, Locale locale) {
return "my custom format";
}
});
}
}
格式化被註冊,但從來沒有叫!
當前結果總是如下:2017-07-10T11:06:02.000+0000
。但我想要得到2017-07-10 11:06:02
無處不在。
我認爲你需要的@EnableWebMvc上一流水平 – Zeromus
我使用'彈簧boot',我可以看到格式化被成功註冊。所以配置bean一般工作。它只是不影響序列化的時間戳值。 – membersound