当前位置: 首页 > news >正文

网站后台文章编辑器手机网站 建设

网站后台文章编辑器,手机网站 建设,专门做美妆的网站,wordpress 导航调用在json对象转换方面#xff0c;springboot默认使用的是MappingJackson2HttpMessageConverter。常规需求#xff0c;在工程中使用阿里的FastJson作为json对象的转换器。 FastJson SerializerFeatures WriteNullListAsEmpty #xff1a;List字段如果为null,输出为[],而非nu…在json对象转换方面springboot默认使用的是MappingJackson2HttpMessageConverter。常规需求在工程中使用阿里的FastJson作为json对象的转换器。 FastJson SerializerFeatures WriteNullListAsEmpty  List字段如果为null,输出为[],而非null WriteNullStringAsEmpty 字符类型字段如果为null,输出为,而非null DisableCircularReferenceDetect 消除对同一对象循环引用的问题默认为false如果不配置有可能会进入死循环 WriteNullBooleanAsFalseBoolean字段如果为null,输出为false,而非null WriteMapNullValue是否输出值为null的字段,默认为false。 public enum SerializerFeature {QuoteFieldNames,UseSingleQuotes,WriteMapNullValue,WriteEnumUsingToString,WriteEnumUsingName,UseISO8601DateFormat,WriteNullListAsEmpty,WriteNullStringAsEmpty,WriteNullNumberAsZero,WriteNullBooleanAsFalse,SkipTransientField,SortField,/** deprecated */DeprecatedWriteTabAsSpecial,PrettyFormat,WriteClassName,DisableCircularReferenceDetect,WriteSlashAsSpecial,BrowserCompatible,WriteDateUseDateFormat,NotWriteRootClassName,/** deprecated */DisableCheckSpecialChar,BeanToArray,WriteNonStringKeyAsString,NotWriteDefaultValue,BrowserSecure,IgnoreNonFieldGetter,WriteNonStringValueAsString,IgnoreErrorGetter,WriteBigDecimalAsPlain,MapSortField; } 使用FastJson有两种常规操作。 一、注入bean的方式这种方法加入的转换器排序是第一位 package com.gaoshan.verification.config;import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import java.util.List;Configuration public class WebMvcConfigurerConfig implements WebMvcConfigurer {Overridepublic void extendMessageConverters(ListHttpMessageConverter? converters) {for (HttpMessageConverter? messageConverter : converters) {System.out.println(messageConverter);}} } package com.gaoshan.verification.config;import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import org.springframework.boot.autoconfigure.http.HttpMessageConverters; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.MediaType;import java.util.ArrayList; import java.util.List;Configuration public class MessageConvertConfig {Beanpublic HttpMessageConverters fastJsonHttpMessageConverters() {FastJsonHttpMessageConverter fastConverter new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig new FastJsonConfig();fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect,SerializerFeature.WriteBigDecimalAsPlain,SerializerFeature.WriteMapNullValue);fastConverter.setFastJsonConfig(fastJsonConfig);ListMediaType supportedMediaTypes new ArrayList();supportedMediaTypes.add(MediaType.APPLICATION_JSON);fastConverter.setSupportedMediaTypes(supportedMediaTypes);return new HttpMessageConverters(fastConverter);} }com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter2c5708e7 org.springframework.http.converter.ByteArrayHttpMessageConverter4ffa078d org.springframework.http.converter.StringHttpMessageConverter4e26564d org.springframework.http.converter.ResourceHttpMessageConverter42238078 org.springframework.http.converter.ResourceRegionHttpMessageConverter5627b8eb org.springframework.http.converter.xml.SourceHttpMessageConverter49fe0bcd org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter3516b881 org.springframework.http.converter.json.MappingJackson2HttpMessageConverter6be8ce1b org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConvertere3c36d 二、实现WebMvcConfigurer接口这种方法加入的转换器排序是最后一位 package com.gaoshan.verification.config;import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import org.springframework.context.annotation.Configuration; import org.springframework.http.MediaType; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import java.util.ArrayList; import java.util.List;Configuration public class WebMvcConfigurerConfig implements WebMvcConfigurer {Overridepublic void extendMessageConverters(ListHttpMessageConverter? converters) {for (HttpMessageConverter? messageConverter : converters) {System.out.println(messageConverter);}}Overridepublic void configureMessageConverters(ListHttpMessageConverter? converters) {FastJsonHttpMessageConverter fastConverter new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig new FastJsonConfig();fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect,SerializerFeature.WriteBigDecimalAsPlain,SerializerFeature.WriteMapNullValue);fastConverter.setFastJsonConfig(fastJsonConfig);ListMediaType supportedMediaTypes new ArrayList();supportedMediaTypes.add(MediaType.APPLICATION_JSON);fastConverter.setSupportedMediaTypes(supportedMediaTypes);converters.add(fastConverter);} }org.springframework.http.converter.ByteArrayHttpMessageConverter71f29d91 org.springframework.http.converter.StringHttpMessageConverter6785df10 org.springframework.http.converter.StringHttpMessageConverter6143b2b1 org.springframework.http.converter.ResourceHttpMessageConvertera63643e org.springframework.http.converter.ResourceRegionHttpMessageConverter43294e9b org.springframework.http.converter.xml.SourceHttpMessageConverter26d24d7a org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter5a78b52b org.springframework.http.converter.json.MappingJackson2HttpMessageConverter144440f5 org.springframework.http.converter.json.MappingJackson2HttpMessageConverter4bab78ce org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter42ffbab6 com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter7672960e 注意 1、可以两种方式同时使用这样可以达到目的在转换器列表的头尾都会出现FastJsonHttpMessageConverter com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter2c5708e7 org.springframework.http.converter.ByteArrayHttpMessageConverter4ffa078d org.springframework.http.converter.StringHttpMessageConverter4e26564d org.springframework.http.converter.ResourceHttpMessageConverter42238078 org.springframework.http.converter.ResourceRegionHttpMessageConverter5627b8eb org.springframework.http.converter.xml.SourceHttpMessageConverter49fe0bcd org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter3516b881 org.springframework.http.converter.json.MappingJackson2HttpMessageConverter6be8ce1b org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConvertere3c36d com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter397a10df   2、不要乱加 EnableWebMvc标签这个标签会导致添加自定义消息转换器失败。因为时间问题目前还不清楚具体原因 针对方案一启动类或任意配置类加了EnableWebMvc后导致自定义的转换器没有出现在集合内即添加自定义转换器失败 package com.gaoshan.verification.config;import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import java.util.List;Configuration EnableWebMvc public class WebMvcConfigurerConfig implements WebMvcConfigurer {Overridepublic void extendMessageConverters(ListHttpMessageConverter? converters) {for (HttpMessageConverter? messageConverter : converters) {System.out.println(messageConverter);}} }package com.gaoshan.verification.config;import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import org.springframework.boot.autoconfigure.http.HttpMessageConverters; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.MediaType;import java.util.ArrayList; import java.util.List;Configuration public class MessageConvertConfig {Beanpublic HttpMessageConverters fastJsonHttpMessageConverters() {FastJsonHttpMessageConverter fastConverter new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig new FastJsonConfig();fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect,SerializerFeature.WriteBigDecimalAsPlain,SerializerFeature.WriteMapNullValue);fastConverter.setFastJsonConfig(fastJsonConfig);ListMediaType supportedMediaTypes new ArrayList();supportedMediaTypes.add(MediaType.APPLICATION_JSON);fastConverter.setSupportedMediaTypes(supportedMediaTypes);return new HttpMessageConverters(fastConverter);} }org.springframework.http.converter.ByteArrayHttpMessageConverter42238078 org.springframework.http.converter.StringHttpMessageConverter5627b8eb org.springframework.http.converter.ResourceHttpMessageConverter49fe0bcd org.springframework.http.converter.ResourceRegionHttpMessageConverter3516b881 org.springframework.http.converter.xml.SourceHttpMessageConverter6be8ce1b org.springframework.http.converter.support.AllEncompassingFormHttpMessageConvertere3c36d org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter397a10df org.springframework.http.converter.json.MappingJackson2HttpMessageConverter39a865c1 针对方案二启动类或任意配置类加了EnableWebMvc后导致集合内仅有自定义转换器 package com.gaoshan.verification.config;import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import org.springframework.context.annotation.Configuration; import org.springframework.http.MediaType; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import java.util.ArrayList; import java.util.List;Configuration EnableWebMvc public class WebMvcConfigurerConfig implements WebMvcConfigurer {Overridepublic void extendMessageConverters(ListHttpMessageConverter? converters) {for (HttpMessageConverter? messageConverter : converters) {System.out.println(messageConverter);}}Overridepublic void configureMessageConverters(ListHttpMessageConverter? converters) {FastJsonHttpMessageConverter fastConverter new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig new FastJsonConfig();fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect,SerializerFeature.WriteBigDecimalAsPlain,SerializerFeature.WriteMapNullValue);fastConverter.setFastJsonConfig(fastJsonConfig);ListMediaType supportedMediaTypes new ArrayList();supportedMediaTypes.add(MediaType.APPLICATION_JSON);fastConverter.setSupportedMediaTypes(supportedMediaTypes);converters.add(fastConverter);} }com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter1df06ecd 启动类代码 package com;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication public class VerificationApplication {public static void main(String[] args) {SpringApplication.run(VerificationApplication.class, args);}}
http://www.w-s-a.com/news/946984/

相关文章:

  • 全网最稳最低价自助下单网站wordpress电影网站主题
  • 域名更换网站温州建设工程网站
  • 网站如何优化推广连锁店管理网站开发
  • 伊宁市做网站功能性质网站
  • 北京哪个网站制作公司优化大师免费安装下载
  • 同江佳木斯网站设计做网站联系电话
  • 设计上海展会2023seo网站模板下载
  • 开发一个卖东西的网站多少站长工具永久
  • 公司网站怎么突然多了好多友情链接如何删除宁波有几个区
  • 临沂seo网站推广wordpress新编辑器
  • c2c网站设计店面logo设计制作
  • 网站建设任务执行书重庆今天新闻事件
  • 怎样发布自己的网站南宁制作网站公司
  • wordpress装多站点百度查一下
  • 怎么优化一个网站搭建网站免费空间
  • 山东建设和城乡建设厅注册中心网站首页wordpress安装教材
  • 个人风采网站制作毕节网站开发公司电话
  • 网络网站销售设计主题和设计理念
  • 做网站一般用什么服务器承德专业做网站
  • 松北区建设局网站网站建设分为几种
  • 网站建设的合同 体会智联招聘网站建设情况
  • 记的网站域名wordpress地方信息主题
  • 淄博好的建网站公司网站建设 海口
  • 有人做网站花了10几万2017做啥网站能致富
  • 做网站有什么软件cod建站平台
  • 合肥学校网站建设怎么做免费的产品图片网站
  • 营养早餐网站的设计与制作建设通网站怎么查项目经理在建
  • 浑南区建设局网站永州网站建设公司推荐
  • 做外贸都得有网站吗绵阳网站建设制作
  • 功能性的网站建设北京餐饮品牌设计公司