• spring mvc json 问题


    applicationContext.xml  

     1 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  
     2         <property name="messageConverters">  
     3             <list>  
     4                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">  
     5                    <property name="supportedMediaTypes">  
     6                        <list>  
     7                            <value>text/plain;charset=UTF-8</value>  
     8                            <value>application/json;charset=UTF-8</value>  
     9                        </list>  
    10                    </property>  
    11                    <property name="objectMapper">  
    12                        <bean class="com.charmyin.cmstudio.common.utils.ObjectMappingCustomer"></bean>  
    13                    </property>  
    14                </bean>     
    15             </list>  
    16         </property>  
    17     </bean>

    此处我也尝试了

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

    ObjectMappingCustomer.java 

     1 package com.charmyin.cmstudio.common.utils;
     2 
     3 
     4 import java.io.IOException;
     5 
     6 import com.fasterxml.jackson.databind.JsonSerializer;
     7 import com.fasterxml.jackson.databind.ObjectMapper;
     8 import com.fasterxml.jackson.core.JsonGenerator;
     9 import com.fasterxml.jackson.core.JsonParser;       
    10 import com.fasterxml.jackson.core.JsonProcessingException;
    11 import com.fasterxml.jackson.databind.SerializerProvider;
    12  
    13     public class ObjectMappingCustomer extends ObjectMapper  
    14 
    15     {
    16 
    17         /**
    18          * 
    19          */
    20         private static final long serialVersionUID = 1L;  
    21 
    22        
    23 
    24         public ObjectMappingCustomer()  
    25 
    26         {  
    27 //
    28             super();  
    29 
    30             // 允许单引号  
    31 
    32             this.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);  
    33 
    34             // 字段和值都加引号  
    35 
    36             this.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);  
    37 
    38             // 数字也加引号  
    39 
    40             this.configure(JsonGenerator.Feature.WRITE_NUMBERS_AS_STRINGS, true);  
    41 
    42             this.configure(JsonGenerator.Feature.QUOTE_NON_NUMERIC_NUMBERS, true); 
    43 //
    44 //            // 空值处理为空串  
    45 //
    46             SerializerProvider sp = (SerializerProvider) this.getSerializerProvider();
    47 
    48             sp.setNullValueSerializer(new JsonSerializer<Object>(){
    49 
    50  
    51 
    52                 @Override
    53 
    54                 public void serialize(Object value, JsonGenerator jg,
    55 
    56                         SerializerProvider sp) throws IOException,
    57 
    58                         JsonProcessingException {
    59 
    60                      jg.writeString("");  
    61 
    62                 }
    63 
    64                  
    65 
    66             });
    67 //
    68 //       
    69 //
    70         }  
    71 
    72     }

    输出的json

    {
        "rows": [
            {
                "pageVO": null,
                "praId": "bffa397b245849909a9c2af4e74e007d19a1e6cb",
                "creatorId": 248,
                "creatorName": "stu123",
                "finalReport": null
          }
        ]
    }
  • 相关阅读:
    管理~资源组织运作
    科学与艺术区别
    概念思维
    拨开文字表象,关注背后事实
    论信息部门与业务部门的关系
    再论信息系统
    linux命令行快捷键记录
    hadoop,帮我解了部分惑的文章
    hadoop运行测试命令遇到的问题
    日志分析及几个小技巧
  • 原文地址:https://www.cnblogs.com/MDK-L/p/4433814.html
Copyright © 2020-2023  润新知