做网站游戏都需要什么,网站建设的技能有哪些方面,广州网站建设要多少钱,WordPress微信签到[求助] Spring4 MVC 返回json格式时候 设置不返回null值属性的问题本帖最后由 bighong0404 于 2015-10-06 12:45:38 编辑背景:使用responseBody设置以json格式返回数据时候. 有时候被返回的对象有些属性是null值, 默认还是会输出. 例如下面代码. 在与移动端交互时候会很浪费流量…[求助] Spring4 MVC 返回json格式时候 设置不返回null值属性的问题本帖最后由 bighong0404 于 2015-10-06 12:45:38 编辑背景:使用responseBody设置以json格式返回数据时候. 有时候被返回的对象有些属性是null值, 默认还是会输出. 例如下面代码. 在与移动端交互时候会很浪费流量.{fpassword : sssssssss,favator : ,fbirthday : null,fcredType : null,fcredid : null,fregistedTime : null,fstate : 1,flstate : 1,fstatusMask : 0,fstatusMask1 : 0,fcreateTime : 1443260277000,fmodifyTime : 1443260277000,fstandby0 : null,fstandby1 : null,fstandby2 : null,fstandby3 : null,fstandby4 : null,fstandby5 : null,fstandby6 : null,fpassFlag : 1,fquestion1 : null,fanswer1 : null,fquestion2 : null,fanswer2 : null,fregDeviceId : null,fregClientIp : null,fregChannel : null,fpassModifyTime : null}有两种方法设置不返回null值属性.1. 在被返回的对象例如User类, 添加注解JsonInclude(Include.NON_NULL)即可. 在spring4.1.6, jackson-databind 2.5.1版本亲测有效spring使用的是fasterxml.jackson组件解析对象. 因此依赖一下包..com.fasterxml.jackson.corejackson-databind2.5.1问题来了!! 第二种方法:2. spring mvc配置文件,查看API文件, 发现com.fasterxml.jackson.databind.ObjectMapper有一下方法, 而JsonInclude.Include枚举类有个值: NON_NULL(感觉应该和方法1的注解是同一个),public ObjectMapper setSerializationInclusion(JsonInclude.Include incl) {_serializationConfig _serializationConfig.withSerializationInclusion(incl);return this;}因此对jackson的objectMapper设置属性NON_NULL最后就是这样:classorg.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapterNON_NULLapplication/json;charsetUTF-8但测试过还是无效.....也尝试了自己写子类继承com.fasterxml.jackson.databind.ObjectMapper.public class CustomObjectMapper extends ObjectMapper {private static final long serialVersionUID 3072523733092288622L;public CustomObjectMapper() {super.setDateFormat(new SimpleDateFormat(yyyy-MM-dd HH:mm:ss));super.getSerializationConfig().withSerializationInclusion(JsonInclude.Include.NON_NULL);}}然后注入到上诉代码被注释的地方替换com.fasterxml.jackson.databind.ObjectMapper.. 还是无用....求助哪位大神能帮忙解答一下.... 明显第二种方法优于第一种..... 但苦于无效...------解决思路----------------------思路覆盖默认的MappingJacksonHttpMessageConverter。重载MappingJacksonHttpMessageConverter提供配置排除null值classorg.springframework.http.converter.json.MappingJacksonHttpMessageConverterstatic-fieldorg.codehaus.jackson.map.annotate.JsonSerialize.Inclusion.NON_NULL /