Spring Boot 2.0バージョンJacksonグローバル転化longタイプはStringであり、Jacksonのプログレッシブ化時のlongタイプの精度が欠けている問題を解決します.


説明
longタイプをフロントに渡す時、longタイプの数値が長いと、精度が落ちるという問題があります.以下は解決策です.
前提
  • バージョン:Spring Boot 2.0および以上の
  • プログレッシブツールJackson
  • 解決策
    import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
    
    import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
    
    /**
     * Jackson  
     * @author William
     *
     */
    @Configuration
    public class JacksonConfig {
    
    	/**
    	 * Jackson    long   String,  jackson    long        
    	 * @return Jackson2ObjectMapperBuilderCustomizer      
    	 */
    	@Bean
    	public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
    		Jackson2ObjectMapperBuilderCustomizer cunstomizer = new Jackson2ObjectMapperBuilderCustomizer() {
    			
    			@Override
    			public void customize(Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder) {
    
    				jacksonObjectMapperBuilder.serializerByType(Long.TYPE, ToStringSerializer.instance);
    			}
    		};
    		
    		return cunstomizer;
    	}
    }
    その他の設定、参考:https://blog.csdn.net/xiaoxiangzi520/article/details/76522242