@Bean
public Logger.Level getFeignLoggerLevel() {
return Logger.Level.FULL ;
} @Bean
public ResponseEntityDecoder feignDecoder() {
HttpMessageConverter fastJsonConverter = createFastJsonConverter();
ObjectFactory<HttpMessageConverters> objectFactory = () -> new HttpMessageConverters(fastJsonConverter);
return new ResponseEntityDecoder(new SpringDecoder(objectFactory));
} @Bean
public SpringEncoder feignEncoder(){
HttpMessageConverter fastJsonConverter = createFastJsonConverter();
ObjectFactory<HttpMessageConverters> objectFactory = () -> new HttpMessageConverters(fastJsonConverter);
return new SpringEncoder(objectFactory);
} private HttpMessageConverter createFastJsonConverter() { //创建fastJson消息转换器
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter(); //升级最新版本需加=============================================================
List<MediaType> supportedMediaTypes = new ArrayList<>();
supportedMediaTypes.add(MediaType.APPLICATION_JSON);
supportedMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
supportedMediaTypes.add(MediaType.APPLICATION_ATOM_XML);
supportedMediaTypes.add(MediaType.APPLICATION_FORM_URLENCODED);
supportedMediaTypes.add(MediaType.APPLICATION_OCTET_STREAM);
supportedMediaTypes.add(MediaType.APPLICATION_PDF);
supportedMediaTypes.add(MediaType.APPLICATION_RSS_XML);
supportedMediaTypes.add(MediaType.APPLICATION_XHTML_XML);
supportedMediaTypes.add(MediaType.APPLICATION_XML);
supportedMediaTypes.add(MediaType.IMAGE_GIF);
supportedMediaTypes.add(MediaType.IMAGE_JPEG);
supportedMediaTypes.add(MediaType.IMAGE_PNG);
supportedMediaTypes.add(MediaType.TEXT_EVENT_STREAM);
supportedMediaTypes.add(MediaType.TEXT_HTML);
supportedMediaTypes.add(MediaType.TEXT_MARKDOWN);
supportedMediaTypes.add(MediaType.TEXT_PLAIN);
supportedMediaTypes.add(MediaType.TEXT_XML);
fastConverter.setSupportedMediaTypes(supportedMediaTypes); //创建配置类
FastJsonConfig fastJsonConfig = new FastJsonConfig();
//修改配置返回内容的过滤
//WriteNullListAsEmpty :List字段如果为null,输出为[],而非null
//WriteNullStringAsEmpty : 字符类型字段如果为null,输出为"",而非null
//DisableCircularReferenceDetect :消除对同一对象循环引用的问题,默认为false(如果不配置有可能会进入死循环)
//WriteNullBooleanAsFalse:Boolean字段如果为null,输出为false,而非null
//WriteMapNullValue:是否输出值为null的字段,默认为false
fastJsonConfig.setSerializerFeatures(
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteMapNullValue,
SerializerFeature.PrettyFormat,
SerializerFeature.WriteNullListAsEmpty,
SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteEnumUsingToString,
SerializerFeature.WriteNullStringAsEmpty
);
fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");
fastConverter.setFastJsonConfig(fastJsonConfig); return fastConverter;
}

  

最新文章

  1. delete file by bat
  2. 控件 UI: VisualState, VisualStateManager, 控件的默认 UI
  3. Hibernate中的一级缓存、二级缓存和懒加载
  4. Java [Leetcode 119]Pascal&#39;s Triangle II
  5. navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK
  6. Ubuntu Nginx安装
  7. zookeeper入门系列:概述
  8. Kubernetes — 深入解析Pod对象:基本概念(二)
  9. sublime text3最常用快捷键
  10. Ubuntu 基于Docker的TensorFlow 环境搭建
  11. jQuery 表单内容的获取
  12. hadoop/etc/hadoop 下没有mapred-site.xml,只有mapred.xml.template
  13. proguard-rules.pro、混淆、导jar包
  14. [转]总结使用Unity 3D优化游戏运行性能的经验
  15. python 集合的运算
  16. ExecutorService的四种线程池
  17. Python普通方法、静态方法、类方法
  18. 升级vue-cli为 cli3 并创建项目
  19. python logging模块介绍
  20. FastJson的一些使用

热门文章

  1. 总结js常用的dom操作(js的dom操作API)
  2. js type
  3. [RK3399] 汇顶gt9xx触摸屏在RK原始代码调试
  4. (转)MitmProxy+APPnium安装使用
  5. 梯度下降法(BGD &amp; SGD &amp; Mini-batch SGD)
  6. 文件CRC和MD5校验
  7. nginx -- 设置单点登录 sso oidc oauth
  8. 激活函数,Batch Normalization和Dropout
  9. javaScript(拼写树形)+ajax请求,去后台查找数据
  10. nodejs做中间层,转发请求