spring boot 接口返回,由bean转json相关配置


1.忽略 null 值   2.将Date类型转为  yyyy-MM-dd HH:mm:ss  

     @Bean  
     @ConditionalOnMissingBean(ObjectMapper.class)  
     public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder)  
     {  
         ObjectMapper objectMapper = builder.createXmlMapper(false).build();  
   
         // 通过该方法对mapper对象进行设置,所有序列化的对象都将按改规则进行系列化  
         // Include.Include.ALWAYS 默认  
         // Include.NON_DEFAULT 属性为默认值不序列化  
         // Include.NON_EMPTY 属性为 空("") 或者为 NULL 都不序列化,则返回的json是没有这个字段的。这样对移动端会更省流量  
         // Include.NON_NULL 属性为NULL 不序列化,就是为null的字段不参加序列化  
         objectMapper.setSerializationInclusion(Include.NON_EMPTY);  
         
         //Date 类型转 yyyy-MM-dd HH:mm:ss格式
         SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         objectMapper.setDateFormat(dateFormat);
         // 字段保留,将null值转为""  
//         objectMapper.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>()  
//	     {  
//	         @Override  
//	         public void serialize(Object o, JsonGenerator jsonGenerator,  
//	                               SerializerProvider serializerProvider)  
//	                 throws IOException, JsonProcessingException  
//	         {  
//	             jsonGenerator.writeString("");  
//	         }  
//	     });  
         return objectMapper;  
     } 



猜你喜欢

转载自blog.csdn.net/wuyezhiyu/article/details/80487023