spring jack 使用自定义的objectMapper。或者在xml配置objectMapper参数
2017-06-08 20:28
543 查看
在spring-servlet.xml中配置json的转换器:
[html]
view plain
copy
print?
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<!-- objectMapper配置 -->
<property name="objectMapper">
<bean class="com.test.MyObjectMapper" />
<!-- <bean class="com.fasterxml.jackson.databind.ObjectMapper">
驼峰命名法转换为小写加下划线
<property name="propertyNamingStrategy">
<bean class="com.fasterxml.jackson.databind.PropertyNamingStrategy.LowerCaseWithUnderscoresStrategy" />
</property>
为null字段时不输出
<property name="serializationInclusion">
<value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
</property>
禁用空对象转换json校验
<property name="configure">
<value type="com.fasterxml.jackson.databind.SerializationFeature">FAIL_ON_EMPTY_BEANS</value>
</property>
忽略未知的字段
<property name="configure">
<value type="com.fasterxml.jackson.databind.DeserializationFeature">FAIL_ON_UNKNOWN_PROPERTIES</value>
</property>
</bean> -->
</property>
<!-- 支持的类型,编码 -->
<property name="supportedMediaTypes">
<span style="white-space:pre"> </span><list>
<span style="white-space:pre"> </span><value>application/json;charset=UTF-8</value>
</list>
<span style="white-space:pre"> </span></property>
</bean>
MyObjectMapper.Java文件如下:
[java]
view plain
copy
print?
public class MyObjectMapper extends ObjectMapper {
private static final long serialVersionUID = 4402127997078513582L;
public MyObjectMapper() {
//设置null值不参与序列化(字段不被显示)
this.setSerializationInclusion(Include.NON_NULL);
// 禁用空对象转换json校验
this.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
this.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//驼峰命名法转换为小写加下划线
this.setPropertyNamingStrategy(PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES);
}
}
[html]
view plain
copy
print?
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<!-- objectMapper配置 -->
<property name="objectMapper">
<bean class="com.test.MyObjectMapper" />
<!-- <bean class="com.fasterxml.jackson.databind.ObjectMapper">
驼峰命名法转换为小写加下划线
<property name="propertyNamingStrategy">
<bean class="com.fasterxml.jackson.databind.PropertyNamingStrategy.LowerCaseWithUnderscoresStrategy" />
</property>
为null字段时不输出
<property name="serializationInclusion">
<value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
</property>
禁用空对象转换json校验
<property name="configure">
<value type="com.fasterxml.jackson.databind.SerializationFeature">FAIL_ON_EMPTY_BEANS</value>
</property>
忽略未知的字段
<property name="configure">
<value type="com.fasterxml.jackson.databind.DeserializationFeature">FAIL_ON_UNKNOWN_PROPERTIES</value>
</property>
</bean> -->
</property>
<!-- 支持的类型,编码 -->
<property name="supportedMediaTypes">
<span style="white-space:pre"> </span><list>
<span style="white-space:pre"> </span><value>application/json;charset=UTF-8</value>
</list>
<span style="white-space:pre"> </span></property>
</bean>
MyObjectMapper.Java文件如下:
[java]
view plain
copy
print?
public class MyObjectMapper extends ObjectMapper {
private static final long serialVersionUID = 4402127997078513582L;
public MyObjectMapper() {
//设置null值不参与序列化(字段不被显示)
this.setSerializationInclusion(Include.NON_NULL);
// 禁用空对象转换json校验
this.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
this.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//驼峰命名法转换为小写加下划线
this.setPropertyNamingStrategy(PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES);
}
}
相关文章推荐
- spring jack 使用自定义的objectMapper。或者在xml配置objectMapper参数
- 配置文件的使用,如果要跨平台,建议直接用 xml, json, ini 或者本文档,看自己方便
- 使用原始XML资源保留配置信息或者相关数据资源
- 无xml配置——使用Spring发送自定义模版邮件通知
- Spring Boot通过Mybatis,使用mapper接口和xml配置sql,连接数据库
- 【spring boot logback】日志颜色渲染,使用logback-spring.xml自定义的配置文件后,日志没有颜色了
- Hibernate使用自定义脚本替换注解或者xml文件中的自动生成表结构
- 谷歌验证码非web.xml非servlet拦截 使用配置文件自定义加载,防止多次点击(防js攻击)
- Jackson(ObjectMapper)的简单使用(可转xml)
- 使用spring的DelegatingFilterProxy代理配置web.xml的自定义filter
- Hibernate使用自定义脚本替换注解或者xml文件中的自动生成表结构
- log4j xml 配置 自定义使用版
- mybatis的mapper代理,SqlMapConfig.xml中配置,输入和输出映射使用案例
- 3.Spring Boot + Security初步使用(覆盖配置的两种方式 配置类和XML注入以自定义页面为例)
- mapper.xml配置文件里使用<无效
- 使用Hibernate的XML配置来映射枚举类型,存储自定义类型数据
- 【spring boot logback】日志使用自定义的logback-spring.xml文件后,application.properties中关于日志的相关配置还会起作用么
- 关于web.xml配置error-page或者springmvc添加自定义异常返回画面,画面没有显示
- Hibernate使用自定义脚本替换注解或者xml文件中的自动生成表结构
- android应用面试宝典(下);用自定义组件控制循环组件使用bug还添加标志显示答案标志位;通过包名读取配置文件AndroidManifest.xml