SpringMVC 常规配置操作分析

虾米哥 阅读:166 2021-03-31 16:50:50 评论:0

1、替换SpringMVC 默认转换器(jackson 转换为fastjson)

@Configuration 
@EnableWebMvc 
public class SpingMVCConfig extends WebMvcConfigurerAdapter { 
	@Override 
	public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { 
		super.configureMessageConverters(converters); 
		// TODO Auto-generated method stub 
		// 采用fastjson 解析json 
		FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); 
		FastJsonConfig config = new FastJsonConfig(); 
		// 允许不带引号的字段名 
		config.setFeatures(com.alibaba.fastjson.parser.Feature.AllowUnQuotedFieldNames); 
		// 允许单引号的字段名 
		config.setFeatures(com.alibaba.fastjson.parser.Feature.AllowSingleQuotes); 
		// 允许任意逗号 
		config.setFeatures(com.alibaba.fastjson.parser.Feature.AllowArbitraryCommas); 
		converter.setFastJsonConfig(config); 
		converters.add(converter); 
          } 
}

2、设置SpringMVC 默认转换器jackjson 涉及json 解析相关规则配置说明

@Configuration 
@EnableWebMvc 
public class SpingMVCConfig extends WebMvcConfigurerAdapter { 
	@Override 
	public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { 
		super.configureMessageConverters(converters); 
		com.fasterxml.jackson.databind.ObjectMapper mapper = Jackson2ObjectMapperBuilder.json().build(); 
		// 允许使用特殊字符 
		mapper.configure(com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS, true); 
		//允许使用未带引号的字段名 
		mapper.configure(com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true); 
		//允许使用单引号 
		mapper.configure(com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_SINGLE_QUOTES, true); 
		// 允许反斜杠转义任何字符 
		mapper.configure(com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER, true); 
 
		MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper); 
		converters.add(converter); 
          } 
}

 

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

发表评论
搜索
排行榜
关注我们

一个IT知识分享的公众号