SpringMVC 常規配置操作

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);
          }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章