问题背景:
目前遇到的一个问题。一个对象里面定义了数组、集合、和字符串属性等,但是返回给前端的时候数组和集合都是空的,前端接收到的是“” 一个空字符。然后保存的时候又把空字符传给后端,出现了数据结构不匹配导致报错。
解决方案:
引入依赖
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.10.0</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.10.0</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.10.0</version></dependency>
相关注解:
只需要注解写在属性字段上面即可
为空不返回 @JsonInclude(JsonInclude.Include.NON_EMPTY)
为null不返回 @JsonInclude(JsonInclude.Include.NON_NULL)
当返回前段的时候,如果对应的字段为空或为null,则不会返回给前端该属性