SpringCloud:feign默認jackson解析'yyyy-MM-ddTHH:mm:ssZ'時間格式報錯


Feign默認的使用jackson解析,所以時間傳值時會報錯,時間格式錯誤

解決辦法:

修改feign解析方式為fastjson方式:

@Configuration
public class CxfConfig{

    @Bean
     public Encoder feignEncoder(){
        return new SpringEncoder(feignHttpMessageConverter());
    }

    @Bean
    public Decoder feignDecoder(){
        return new SpringDecoder(feignHttpMessageConverter());
    }

    /**
     *feign和Springboot使用的都是jackson,可以都修改為fastjson解析方式
     */
    private ObjectFactory<HttpMessageConverters> feignHttpMessageConverter(){
        final HttpMessageConverters httpMessageConverters = new HttpMessageConverters(this.getFastJsonConverter());
        return () -> httpMessageConverters;
    }
    
     private FastJsonHttpMessageConverter getFastJsonConverter(){
        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
        List<MediaType> supportedMediaTypes = ArrayList<>();
        MediaType mediaTypeJson = MediaType.valueOf(MediaType.APPLICATION_JSON_UTF8_VALUE);
        supportedMediaTypes.add(mediaTypeJson);
        FastJsonConfig config = new FastJsonConfig();
        config.getSerializeConfig().put(JSON.class,new SwaggerJsonSerializer());
        config.setSerializerFeatures(SerializerFeature.DisableCircularReferenceDetect);
        converter.setFastJsonConfig(config);
        return converter;
    }

}    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM