springboot mybatis里localdatetime序列化問題的解決
問題起因
主要是使用mybatis作為ORM之后,返回的對象為Map,然后對于數(shù)據(jù)庫的datetime,datestamp類型返回為時(shí)間戳而不是標(biāo)準(zhǔn)的時(shí)間,這個(gè)問題解決方案有兩種,大叔分析一下:
1.在mapper的select里,使用mysql這些數(shù)據(jù)庫的函數(shù),dateformat進(jìn)行轉(zhuǎn)化,缺點(diǎn),單元測試?yán)锸褂胔2數(shù)據(jù)庫時(shí)會(huì)找不到這些函數(shù)
2.在ObjectMapper反序列化時(shí)統(tǒng)一進(jìn)行處理,這種方式更好,與具體數(shù)據(jù)庫解耦了
實(shí)現(xiàn)
>引用依賴包
'org.mybatis:mybatis-typehandlers-jsr310:1.0.2', 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.2'
>添加組件類
/** * 序列化localdatetime處理. */ @Component public class JacksonConfig { /** * 注入時(shí)間處理. * * @return */ @Bean @Primary public ObjectMapper objectMapper() { ObjectMapper mapper = new ObjectMapper(); mapper.registerModule(new JSR310Module()); mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")); return mapper; } }
>成功解決問題
{ "pageCurrent": 1, "pageSize": 10, "pageTotal": 1, "data": [ { "freeDays": 8, "city": "", "leadingPerson": "", "contactPerson": "zhangsan", "source": 1, "customerName": "i-counting", "intention": 1, "province": "", "appointmentTime": "2018-09-20T00:00:00.000Z", "createTime": "2018-09-27T06:33:49.000Z", "telephoneStatus": 1, "id": 10000, "contactPhone": "135" } ] }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- mybatisPlus使用LocalDateTime轉(zhuǎn)化異常的實(shí)現(xiàn)
- 淺談MyBatisPlus中LocalDateTime引發(fā)的一些問題和解決辦法
- SpringBoot整合Mybatis?LocalDateTime?映射失效的解決
- 解決mybatis-plus使用jdk8的LocalDateTime 查詢時(shí)報(bào)錯(cuò)的方法
- mybatis如何使用Java8的日期LocalDate和LocalDateTime詳解
- mybatis3.4.0不支持LocalDateTime的解決方法(No typehandler found for property time)
相關(guān)文章
不使用myeclipse注冊機(jī)得到myeclipse注冊碼的方法(myeclipse序列號)
本文為大家介紹不使用myeclipse注冊機(jī)就能得到myeclipse注冊碼(序列號)的方法, 運(yùn)行下面的JAVA代碼就可以了2014-01-01Mybatis基于xml配置實(shí)現(xiàn)單表的增刪改查功能
這篇文章主要介紹了Mybatis基于xml配置實(shí)現(xiàn)單表的增刪改查,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04Spring項(xiàng)目中Ordered接口的應(yīng)用之全局過濾器(GlobalFilter)的順序控制
在Spring框架,尤其是Spring Cloud Gateway或Spring WebFlux項(xiàng)目中,Ordered接口扮演著重要的角色,特別是在實(shí)現(xiàn)全局過濾器(GlobalFilter)時(shí),用于控制過濾器執(zhí)行的優(yōu)先級,下面將介紹如何在Spring項(xiàng)目中使用Ordered接口來管理Global Filter的執(zhí)行順序,需要的朋友可以參考下2024-06-06使用CXF和Jersey框架來進(jìn)行Java的WebService編程
這篇文章主要介紹了使用CXF和Jersey框架來進(jìn)行Java的WebService編程,Web service是一個(gè)平臺獨(dú)立的低耦合的自包含的基于可編程的web的應(yīng)用程序,需要的朋友可以參考下2015-12-12spring data jpa開啟批量插入、批量更新的問題解析
這篇文章主要介紹了spring data jpa開啟批量插入、批量更新問題,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-07-07Java如何實(shí)現(xiàn)kaptcha網(wǎng)頁驗(yàn)證碼驗(yàn)證
在做關(guān)于SSM項(xiàng)目之商鋪系統(tǒng)時(shí),了解到了kaptcha實(shí)現(xiàn)網(wǎng)頁驗(yàn)證碼驗(yàn)證,感覺就很有趣,所以便開始學(xué)習(xí)記錄了起來,復(fù)制粘貼即可用2025-01-01說說字符串轉(zhuǎn) OffSetDateTime 你真的會(huì)用嗎
這篇文章主要介紹了字符串轉(zhuǎn) OffSetDateTime 你真的會(huì)用嗎?具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08IntelliJ IDEA之配置JDK的4種方式(小結(jié))
這篇文章主要介紹了IntelliJ IDEA之配置JDK的4種方式(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10java 使用ConcurrentHashMap和計(jì)數(shù)器實(shí)現(xiàn)鎖
這篇文章主要介紹了java 使用ConcurrentHashMap和計(jì)數(shù)器實(shí)現(xiàn)鎖的相關(guān)資料,需要的朋友可以參考下2017-05-05