博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springboot:集成fastjson(教训)
阅读量:4550 次
发布时间:2019-06-08

本文共 1991 字,大约阅读时间需要 6 分钟。

网上有很多介绍,主要有两种。

1.在启动类中注入bean

/**   * 集成fastjson   *    * @return   */  @Bean  public HttpMessageConverters fastJsonHttpMessageConverters() {    // 1. 需要定义一个converter转换消息的对象    FastJsonHttpMessageConverter fasHttpMessageConverter = new FastJsonHttpMessageConverter();    // 2. 添加fastjson的配置信息,比如:是否需要格式化返回的json的数据    FastJsonConfig fastJsonConfig = new FastJsonConfig();    fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);    // 3. 在converter中添加配置信息    fasHttpMessageConverter.setFastJsonConfig(fastJsonConfig);    HttpMessageConverter
converter = fasHttpMessageConverter; return new HttpMessageConverters(converter); }

2.继承WebMvcConfigurerAdapter,重写方法

WebMvcConfigurerAdapter 已经过期,改由 WebMvcConfigurationSupport 继承

@Override  public void configureMessageConverters(List
> converters) { super.configureMessageConverters(converters); // 1.需要先定义一个convert 转换消息的对象 FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter(); // 2.添加fastJson的配置信息,比如,是否需要格式化返回的json数据 FastJsonConfig fastJsonConfig = new FastJsonConfig(); // 空值特别处理 // WriteNullListAsEmpty 将Collection类型字段的字段空值输出为[] // WriteNullStringAsEmpty 将字符串类型字段的空值输出为空字符串 "" // WriteNullNumberAsZero 将数值类型字段的空值输出为0 // WriteNullBooleanAsFalse 将Boolean类型字段的空值输出为false fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat, SerializerFeature.WriteNullListAsEmpty, SerializerFeature.WriteNullStringAsEmpty); // 处理中文乱码问题 List
fastMediaTypes = new ArrayList<>(); fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8); fastConverter.setSupportedMediaTypes(fastMediaTypes); // 3.在convert中添加配置信息 fastConverter.setFastJsonConfig(fastJsonConfig); // 4.将convert添加到converters当中 converters.add(fastConverter); }

我一开始在启动类用的是第一种方法,不成功,用第二种也是不成功 ,试了很多次,还是失败。

突然想起一件事件,我用了拦截器,里面有一个类继承了WebMvcConfigurationSupport,是不是这个类搞得。

于是把启动类中集成代码转移到这个拦截器中,一切OK了。

转载于:https://www.cnblogs.com/huiy/p/9035611.html

你可能感兴趣的文章
【转】UITextView检查已输入字符字数
查看>>
延迟初始化
查看>>
字符串格式化和format
查看>>
页面内容添加新的显示或者显示隐藏的内容,滚动条滚动到最低端,显示出新内容...
查看>>
【poj1182】 食物链
查看>>
Oracle学习之start with...connect by子句的用法
查看>>
matlab去云雾
查看>>
500lines项目简介
查看>>
Asp.net core logging 日志
查看>>
BOM浏览器对象模型
查看>>
Ajax的封装
查看>>
Java传入参数个数不确定可用(Type ... values)
查看>>
POJ 2081
查看>>
记录下zend studio 的xdebug 在调试安装
查看>>
ES6阅读笔记
查看>>
数字基带信号分类
查看>>
移动HTML5前端性能优化指南(转)
查看>>
Jq 遍历each()方法
查看>>
Android源码分析:Telephony部分–phone进程
查看>>
关于 redis.properties配置文件及rule
查看>>