900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 空转空串java_spring mvc json null空转空串

空转空串java_spring mvc json null空转空串

时间:2022-09-28 15:16:48

相关推荐

空转空串java_spring mvc json null空转空串

解决方法和网上的 不太一样 因为SerializerProvider 为StdSerializerProvider的父类,直接从SerializerProvider .setNullValueSerializer()方法 不允许 所以通过子类StdSerializerProvider调用此方法

applicationContext.xml

class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">

text/plain;charset=UTF-8

application/json;charset=UTF-8

ObjectMappingCustomer.java

packagecom.interceptor;

importjava.io.IOException;

importorg.codehaus.jackson.JsonGenerator;

importorg.codehaus.jackson.JsonParser;

importorg.codehaus.jackson.JsonProcessingException;

importorg.codehaus.jackson.map.JsonSerializer;

importorg.codehaus.jackson.map.ObjectMapper;

importorg.codehaus.jackson.map.SerializerProvider;

importorg.codehaus.jackson.map.ser.StdSerializerProvider;

publicclassObjectMappingCustomerextendsObjectMapper

{

publicObjectMappingCustomer()

{

super();

//允许单引号

this.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES,true);

//字段和值都加引号

this.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES,true);

//数字也加引号

this.configure(JsonGenerator.Feature.WRITE_NUMBERS_AS_STRINGS,true);

this.configure(JsonGenerator.Feature.QUOTE_NON_NUMERIC_NUMBERS,true);

//空值处理为空串

StdSerializerProvidersp=(StdSerializerProvider)this.getSerializerProvider();

sp.setNullValueSerializer(newJsonSerializer(){

@Override

publicvoidserialize(Objectvalue,JsonGeneratorjg,

SerializerProvidersp)throwsIOException,

JsonProcessingException{

jg.writeString("");

}

});

}

}

然后在springmvc controller里加 @ResponseBody注解就可以了

需要jackson-all.jar

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。