欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot全局配置long轉(zhuǎn)String丟失精度的問題解決

 更新時間:2021年08月20日 12:47:14   作者:jdk1.8api  
web項目中,Java后端傳過來的Long/long類型,前端JS接收會丟失精度。那么應(yīng)該如何解決,本文就來介紹一下幾種方法,感興趣的可以了解一下

web項目中,Java后端傳過來的Long/long類型,前端JS接收會丟失精度。

本文推薦第三、第四種方式

第一種方式

簡單粗暴,將所有的Lang類型,改為String,數(shù)據(jù)庫改成varchar類型;

第二種方式

自己建個配置類

extends WebMvcConfigurerAdapter 已經(jīng)被棄用,直接實現(xiàn)WebMvcConfigurer該接口就行了

@EnableWebMvc
@Configuration
public class WebDataConvertConfig implements WebMvcConfigurer {
        public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
            MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
            ObjectMapper objectMapper = new ObjectMapper();
            /**
             * 序列換成json時,將所有的long變成string
             * 因為js中得數(shù)字類型不能包含所有的java long值
             */
            SimpleModule simpleModule = new SimpleModule();
            simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
            simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);
            objectMapper.registerModule(simpleModule);
            jackson2HttpMessageConverter.setObjectMapper(objectMapper);
            converters.add(jackson2HttpMessageConverter);
        }

第三種方式

使用Jackson2

@Configuration
public class JacksonConfig {

 /**
  * Jackson全局轉(zhuǎn)化long類型為String,解決jackson序列化時long類型缺失精度問題
  * @return Jackson2ObjectMapperBuilderCustomizer 注入的對象
  */
    @Bean
    public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
        return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder
                .serializerByType(Long.class, ToStringSerializer.instance)
                .serializerByType(Long.TYPE, ToStringSerializer.instance);
    }
}

第四種方式(缺點:將所有的數(shù)字類型都會轉(zhuǎn)為字符串)

bootstrap.yml添加以下配置:

spring:
  jackson:
  #將所有的number類型轉(zhuǎn)為String返回
    generator:
      write_numbers_as_strings: true
    #格式化返回時間 yyyy-MM-dd HH:mm:ss
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8

到此這篇關(guān)于SpringBoot全局配置long轉(zhuǎn)String丟失精度的問題解決的文章就介紹到這了,更多相關(guān)SpringBoot long轉(zhuǎn)String丟失精度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Hibernate 與 Mybatis 的共存問題,打破你的認(rèn)知!(兩個ORM框架)

    Hibernate 與 Mybatis 的共存問題,打破你的認(rèn)知!(兩個ORM框架)

    這篇文章主要介紹了Hibernate 與 Mybatis 如何共存?本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • 基于Java實現(xiàn)QQ郵箱發(fā)送工具類

    基于Java實現(xiàn)QQ郵箱發(fā)送工具類

    我們在日常開發(fā)中,需要實現(xiàn)一個對郵箱的發(fā)送,今天就實現(xiàn)郵箱的發(fā)送工具類,只需要一些注冊郵箱之后的配置即可,感興趣的小伙伴可以了解下
    2023-12-12
  • 通過實例解析Java不可變對象原理

    通過實例解析Java不可變對象原理

    這篇文章主要介紹了通過實例解析Java不可變對象原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • Spring運行時動態(tài)注冊bean的方法

    Spring運行時動態(tài)注冊bean的方法

    這篇文章主要介紹了Spring運行時動態(tài)注冊bean的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 詳解Java分布式系統(tǒng)中session一致性問題

    詳解Java分布式系統(tǒng)中session一致性問題

    這篇文章主要介紹了Java分布式系統(tǒng)中session一致性問題,對分布式系統(tǒng)感興趣的同學(xué),要仔細(xì)看一下
    2021-04-04
  • SpringBoot下token短信驗證登入登出權(quán)限操作(token存放redis,ali短信接口)

    SpringBoot下token短信驗證登入登出權(quán)限操作(token存放redis,ali短信接口)

    這篇文章主要介紹了SpringBoot下token短信驗證登入登出權(quán)限操作(token存放redis,ali短信接口),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java實現(xiàn)布隆過濾器的示例詳解

    Java實現(xiàn)布隆過濾器的示例詳解

    布隆過濾器(Bloom?Filter)是1970年由布隆提出來的,實際上是由一個很長的二進(jìn)制數(shù)組+一系列hash算法映射函數(shù),用于判斷一個元素是否存在于集合中。本文主要介紹了Java實現(xiàn)布隆過濾器的示例代碼,希望對大家有所幫助
    2023-03-03
  • java并發(fā)編程專題(八)----(JUC)實例講解CountDownLatch

    java并發(fā)編程專題(八)----(JUC)實例講解CountDownLatch

    這篇文章主要介紹了java CountDownLatch的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Java 多線程實例詳解(二)

    Java 多線程實例詳解(二)

    本文主要介紹Java 多線程的資料整理,這里整理了詳細(xì)資料及相關(guān)示例代碼,有興趣的小伙伴可以參考下
    2016-09-09
  • mybatis連接mysql的實現(xiàn)過程

    mybatis連接mysql的實現(xiàn)過程

    通過配置Maven的pom文件,可以簡化MyBatis連接數(shù)據(jù)庫的過程,免去手動下載和導(dǎo)入各種依賴包的麻煩,本文介紹了如何利用Maven導(dǎo)入MyBatis及其他相關(guān)依賴,如Junit、MySQL連接驅(qū)動、Druid連接池和Dbutil等,以簡化數(shù)據(jù)庫操作和測試
    2024-10-10

最新評論