欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

springboot结果集空值处理

发布时间:2025/3/19 编程问答 27 豆豆
生活随笔 收集整理的这篇文章主要介绍了 springboot结果集空值处理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

springboot反馈前端json串时,对象中有空值或者null时,相应字段不显示怎么办。

1.配置文件中处理:application.yml

default-property-inclusion: ALWAYS 

spring:jackson:# 设置属性命名策略,对应jackson下PropertyNamingStrategy中的常量值,SNAKE_CASE-返回的json驼峰式转下划线,json body下划线传到后端自动转驼峰式property-naming-strategy: SNAKE_CASE# 全局设置@JsonFormat的格式patterndate-format: yyyy-MM-dd HH:mm:ss# 当地时区locale: zh# 设置全局时区time-zone: GMT+8# 常用,全局设置pojo或被@JsonInclude注解的属性的序列化方式default-property-inclusion: NON_NULL #不为空的属性才会序列化,具体属性可看JsonInclude.Include# 常规默认,枚举类SerializationFeature中的枚举属性为key,值为boolean设置jackson序列化特性,具体key请看SerializationFeature源码serialization:WRITE_DATES_AS_TIMESTAMPS: true # 返回的java.util.date转换成timestampFAIL_ON_EMPTY_BEANS: true # 对象为空时是否报错,默认true# 枚举类DeserializationFeature中的枚举属性为key,值为boolean设置jackson反序列化特性,具体key请看DeserializationFeature源码deserialization:# 常用,json中含pojo不存在属性时是否失败报错,默认trueFAIL_ON_UNKNOWN_PROPERTIES: false# 枚举类MapperFeature中的枚举属性为key,值为boolean设置jackson ObjectMapper特性# ObjectMapper在jackson中负责json的读写、json与pojo的互转、json tree的互转,具体特性请看MapperFeature,常规默认即可mapper:# 使用getter取代setter探测属性,如类中含getName()但不包含name属性与setName(),传输的vo json格式模板中依旧含name属性USE_GETTERS_AS_SETTERS: true #默认false# 枚举类JsonParser.Feature枚举类中的枚举属性为key,值为boolean设置jackson JsonParser特性# JsonParser在jackson中负责json内容的读取,具体特性请看JsonParser.Feature,一般无需设置默认即可parser:ALLOW_SINGLE_QUOTES: true # 是否允许出现单引号,默认false# 枚举类JsonGenerator.Feature枚举类中的枚举属性为key,值为boolean设置jackson JsonGenerator特性,一般无需设置默认即可# JsonGenerator在jackson中负责编写json内容,具体特性请看JsonGenerator.Feature

2.配置类中处理

fastJsonConfig.setSerializerFeatures(SerializerFeature.WriteMapNullValue);

import java.nio.charset.Charset; import java.util.ArrayList; import java.util.List;import org.springframework.boot.autoconfigure.http.HttpMessageConverters; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.MediaType; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter;import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;@Configuration public class FastJsonConfiguration {@Beanpublic HttpMessageConverters fastJsonHttpMessageConverters() {FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig = new FastJsonConfig();List<MediaType> fastMediaTypes = new ArrayList<>();// 处理中文乱码问题fastJsonConfig.setCharset(Charset.forName("UTF-8"));fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,SerializerFeature.WriteMapNullValue);// 设置时间格式fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);fastJsonHttpMessageConverter.setSupportedMediaTypes(fastMediaTypes);// 在转换器中添加配置信息fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);HttpMessageConverter converter = fastJsonHttpMessageConverter;StringHttpMessageConverter stringConverter = new StringHttpMessageConverter();stringConverter.setDefaultCharset(Charset.forName("UTF-8"));stringConverter.setSupportedMediaTypes(fastMediaTypes);return new HttpMessageConverters(stringConverter, converter);} }

 

与50位技术专家面对面20年技术见证,附赠技术全景图

总结

以上是生活随笔为你收集整理的springboot结果集空值处理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。