zoukankan      html  css  js  c++  java
  • SpringMVC统一转换null值为空字符串的方法

    在SpringMVC中,可以通过在<mvc:annotation-driven>中配置<mvc:message-converters>,把null值统一转换为空字符串,解决这个问题。下面以JSon交互的方式为例说明如何实现:

    第一步:创建一个ObjectMapper

    package com.xjj.anes.mvc.converter;  
      
    import java.io.IOException;  
      
    import com.fasterxml.jackson.core.JsonGenerator;  
    import com.fasterxml.jackson.core.JsonProcessingException;  
    import com.fasterxml.jackson.databind.JsonSerializer;  
    import com.fasterxml.jackson.databind.ObjectMapper;  
    import com.fasterxml.jackson.databind.SerializerProvider;  
      
    /** 
     * @description: 转换null对象为空字符串 
     */  
    public class JsonObjectMapper extends ObjectMapper {  
        private static final long serialVersionUID = 1L;  
      
        public JsonObjectMapper() {  
            super();  
            // 空值处理为空串  
            this.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {  
                @Override  
                public void serialize(Object value, JsonGenerator jg, SerializerProvider sp) throws IOException, JsonProcessingException {  
                    jg.writeString("");  
                }  
            });  
        }  
    }  
    

      第二步:在SpringMVC配置文件中,把新建的ObjectMapper注入给MappingJackson2HttpMessageConverter

    <!-- 注册RequestMappingHandlerMapping 和RequestMappingHandlerAdapter 两个bean。-->  
    <mvc:annotation-driven>  
        <mvc:message-converters>  
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">  
                <property name="objectMapper">  
                    <bean class="com.xjj.anes.mvc.converter.JsonObjectMapper"></bean>  
                </property>  
            </bean>  
        </mvc:message-converters>  
    </mvc:annotation-driven>  
    

      

  • 相关阅读:
    P3507 [POI2010]GRA-The Minima Game
    P2038 无线网络发射器选址
    2017.9.23清北第二场
    P3183 [HAOI2016]食物链
    2017.9.17校内noip模拟赛解题报告
    Day2代码
    P1328 生活大爆炸版石头剪刀布
    Fibinary Numbers
    Mac os 进行Android开发笔记(1)
    python中文注释及输出出错
  • 原文地址:https://www.cnblogs.com/cvst/p/5993646.html
Copyright © 2011-2022 走看看