MyBatis-plus-3.5.9?的分頁功能修復(fù)問題記錄
問題:后端由于字符內(nèi)容過長,前端展示精度丟失修復(fù)
雖然我們?cè)?Swagger 接口測試中并沒有看到精度丟失的錯(cuò)誤,但是在測試中,如果你打開 F12 控制臺(tái),利用預(yù)覽來查 看響應(yīng)數(shù)據(jù),就會(huì)發(fā)現(xiàn)另?一個(gè)問題:id 的最后 兩位好像都變成 0 了!

這是由于前端 JS 的精度范圍有限,我們后端返回的 ID 范圍過大,導(dǎo)致前端精度丟失,會(huì)影響前端頁面獲取到的數(shù)據(jù)結(jié)果。
為了解決這個(gè)問題,可以在后端 config 包下新建一個(gè)全局 JSON 的配置,將整個(gè)后端 Spring MVC 接口返回的值的長整型數(shù)字轉(zhuǎn)換為字符串進(jìn)行返回,從而集中解決問題。

package com.rainbowsea.yupicturebackend.config;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springframework.boot.jackson.JsonComponent;
import org.springframework.context.annotation.Bean;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
/**
* Spring MVC Json 配置
*/
@JsonComponent
public class JsonConfig {
/**
* 添加 Long 轉(zhuǎn) json 精度丟失的配置
*/
@Bean
public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder) {
ObjectMapper objectMapper = builder.createXmlMapper(false).build();
SimpleModule module = new SimpleModule();
module.addSerializer(Long.class, ToStringSerializer.instance);
module.addSerializer(Long.TYPE, ToStringSerializer.instance);
objectMapper.registerModule(module);
return objectMapper;
}
}重啟項(xiàng)目進(jìn)行測試,這次看到的 id 值就正常了:

到此這篇關(guān)于MyBatis-plus-3.5.9 的分頁功能修復(fù)的文章就介紹到這了,更多相關(guān)MyBatis-plus-3.5.9 分頁修復(fù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MyBatis-plus-3.5.9?的分頁功能修復(fù)問題記錄
- 解決mybatis-plus3.4.1分頁插件PaginationInterceptor和防止全表更新與刪除插件SqlExplainInterceptor過時(shí)失效問題
- MyBatis-Plus多表聯(lián)合查詢并且分頁(3表聯(lián)合)
- MyBatis-Plus實(shí)現(xiàn)對(duì)查詢結(jié)果進(jìn)行分頁的基本步驟
- Mybatis-plus原生pages分頁未生效的解決方案
- mybatis-plus分頁查詢的實(shí)現(xiàn)實(shí)例
- SpringBoot中使用MyBatis-Plus實(shí)現(xiàn)分頁接口的詳細(xì)教程
相關(guān)文章
Spring Boot右鍵maven build成功但是直接運(yùn)行main方法出錯(cuò)的解決方案
這篇文章主要介紹了Spring Boot-右鍵maven build成功但是直接運(yùn)行main方法出錯(cuò)的解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
MyBatis詳解如何實(shí)現(xiàn)Dao層接口
MyBatis允許只聲明一個(gè)dao接口,而無需寫dao實(shí)現(xiàn)類的方式實(shí)現(xiàn)數(shù)據(jù)庫操作。前提是必須保證Mapper文件中的<mapper>標(biāo)簽的namespace屬性值必須要和dao接口的類路徑一致,MyBatis容器會(huì)自動(dòng)通過動(dòng)態(tài)代理生成接口的實(shí)現(xiàn)類2022-04-04
Java實(shí)現(xiàn)多個(gè)單張tif文件合并成一個(gè)多頁tif文件
業(yè)務(wù)部門需要將多個(gè)單張的tiff文件,合并成一個(gè)多頁的tiff文件,本文就來介紹一下如何實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
Spring Cloud Config分布式配置中心使用介紹詳解
分布式配置中心應(yīng)用場景 往往,我們使用配置文件管理?些配置信息,比如application.yml 單體應(yīng)用架構(gòu):配置信息的管理、維護(hù)并不會(huì)顯得特別麻煩,手動(dòng)操作就可以,因?yàn)榫鸵粋€(gè)工程2022-09-09
Java后端Tomcat實(shí)現(xiàn)WebSocket實(shí)例教程
WebSocket protocol 是HTML5一種新的協(xié)議。它實(shí)現(xiàn)了瀏覽器與服務(wù)器全雙工通信(full-duplex)。一開始的握手需要借助HTTP請(qǐng)求完成握手。本文給大家介紹Java后端Tomcat實(shí)現(xiàn)WebSocket實(shí)例教程,感興趣的朋友一起學(xué)習(xí)吧2016-05-05

