package com.nuvole.four.config;
|
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
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 java.math.BigInteger;
|
// @formatter:off
|
/**
|
* .-~~~~~~~~~-._ _.-~~~~~~~~~-.
|
* __.' @Author ~. .~ 代码无Bug `.__
|
* .'// liu.q \./ (秘籍) \\`.
|
* .'// [916000612@qq.com] | 欲练神功 引刀自宫 \\`.
|
* .'// .-~"""""""~~~~-._ | _,-~~~~"""""""~-. \\`.
|
* .'//.-" 2019-04-19 `-. | .-' 16:19 "-.\\`.
|
* .'//______.============-.. \ | / ..-============.______\\`.
|
*.'______________________________\|/______________________________`.
|
*
|
* @Description :
|
*/
|
// @formatter:on
|
|
@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(BigInteger.class, ToStringSerializer.instance);
|
jacksonObjectMapperBuilder.serializerByType(Long.class, ToStringSerializer.instance);
|
jacksonObjectMapperBuilder.serializerByType(Long.TYPE, ToStringSerializer.instance); //设置fast json解析规则
|
}
|
};
|
return cunstomizer;
|
}
|
}
|