SpringMVC?處理后端日期格式的示例詳解
通過(guò)擴(kuò)展Spring MVC框架的消息轉(zhuǎn)化器
在WebMvcConfiguration中擴(kuò)展SpringMVC的消息轉(zhuǎn)換器,統(tǒng)一對(duì)日期類型進(jìn)行格式處理
WebMvcConfiguration
/**
* 擴(kuò)展Spring MVC框架的消息轉(zhuǎn)化器
* @param converters
*/
protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
log.info("擴(kuò)展消息轉(zhuǎn)換器...");
//創(chuàng)建一個(gè)消息轉(zhuǎn)換器對(duì)象
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
//需要為消息轉(zhuǎn)換器設(shè)置一個(gè)對(duì)象轉(zhuǎn)換器,對(duì)象轉(zhuǎn)換器可以將Java對(duì)象序列化為json數(shù)據(jù)
converter.setObjectMapper(new JacksonObjectMapper());
//將自己的消息轉(zhuǎn)化器加入容器中
// 0 ,代表 index 放在第一個(gè)位置,優(yōu)先使用,如果不傳0的話默認(rèn)放在最后一個(gè))
converters.add(0,converter);
}JacksonObjectMapper
/**
* 對(duì)象映射器:基于jackson將Java對(duì)象轉(zhuǎn)為json,或者將json轉(zhuǎn)為Java對(duì)象
* 將JSON解析為Java對(duì)象的過(guò)程稱為 [從JSON反序列化Java對(duì)象]
* 從Java對(duì)象生成JSON的過(guò)程稱為 [序列化Java對(duì)象到JSON]
*/
public class JacksonObjectMapper extends ObjectMapper {
public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
//public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm";
public static final String DEFAULT_TIME_FORMAT = "HH:mm:ss";
public JacksonObjectMapper() {
super();
//收到未知屬性時(shí)不報(bào)異常
this.configure(FAIL_ON_UNKNOWN_PROPERTIES, false);
//反序列化時(shí),屬性不存在的兼容處理
this.getDeserializationConfig().withoutFeatures(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
SimpleModule simpleModule = new SimpleModule()
.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)))
.addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)))
.addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)))
.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)))
.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)))
.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)));
//注冊(cè)功能模塊 例如,可以添加自定義序列化器和反序列化器
this.registerModule(simpleModule);
}
}到此這篇關(guān)于SpringMVC 處理后端日期格式的文章就介紹到這了,更多相關(guān)SpringMVC 后端日期格式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mybatis的insert語(yǔ)句插入數(shù)據(jù)時(shí)的返回值的實(shí)現(xiàn)
這篇文章主要介紹了mybatis的insert語(yǔ)句插入數(shù)據(jù)時(shí)的返回值的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
java如何使用正則表達(dá)式限制特殊字符的個(gè)數(shù)
這篇文章主要介紹了java如何使用正則表達(dá)式限制特殊字符的個(gè)數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
SpringBoot如何使用@RequestBody進(jìn)行數(shù)據(jù)校驗(yàn)
在Web開(kāi)發(fā)中,前臺(tái)向后臺(tái)發(fā)送數(shù)據(jù)是非常常見(jiàn)的場(chǎng)景,而在SpringBoot框架中,我們通常使用@RequestBody注解來(lái)接收前臺(tái)發(fā)送的?JSON數(shù)據(jù),并將其轉(zhuǎn)化為Java對(duì)象,本文將介紹如何在?SpringBoot?中使用?@RequestBody?進(jìn)行數(shù)據(jù)校驗(yàn)2023-06-06
java開(kāi)發(fā)之基于Validator接口的SpringMVC數(shù)據(jù)校驗(yàn)方式
這篇文章主要介紹了java開(kāi)發(fā)之基于Validator接口的SpringMVC數(shù)據(jù)校驗(yàn)方式,文中附含詳細(xì)示例代碼,有需要的朋友可以借鑒參考下2021-09-09
Olingo分析和實(shí)踐之ODataImpl詳細(xì)分析(重要方法詳解)
ODataImpl.java是Apache?Olingo?OData框架的核心工廠類,負(fù)責(zé)創(chuàng)建序列化器、反序列化器和處理器等組件,支持OData?v4.0/v4.01多版本及JSON/XML格式,本文給大家介紹Olingo分析和實(shí)踐之ODataImpl詳細(xì)分析,感興趣的朋友一起看看吧2025-07-07
SpringBoot+Vue跨域配置(CORS)問(wèn)題得解決過(guò)程
在使用 Spring Boot 和 Vue 開(kāi)發(fā)前后端分離的項(xiàng)目時(shí),跨域資源共享(CORS)問(wèn)題是一個(gè)常見(jiàn)的挑戰(zhàn),接下來(lái),我將分享我是如何一步步解決這個(gè)問(wèn)題的,包括中間的一些試錯(cuò)過(guò)程,希望能夠幫助到正在經(jīng)歷類似問(wèn)題的你2024-08-08
springboot默認(rèn)文件緩存(easy-captcha?驗(yàn)證碼)
這篇文章主要介紹了springboot的文件緩存(easy-captcha?驗(yàn)證碼),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06
java實(shí)現(xiàn)同步的幾種方式(示例詳解)
這篇文章主要介紹了java實(shí)現(xiàn)同步的幾種方式,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-12-12
java中使用@Transactional會(huì)有哪些坑
在Java中,@Transactional是一個(gè)常用的注解,用于聲明方法應(yīng)該在一個(gè)事務(wù)的上下文中執(zhí)行,本文主要介紹了java中使用@Transactional會(huì)有哪些坑,感興趣的可以了解一下2024-04-04
Java之JVM的內(nèi)存分析(簡(jiǎn)單版+案例)
這篇文章主要介紹了Java之JVM的內(nèi)存分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-05-05

