@JsonProperty(“xx”) 指定JSON字段的名称
常见的场景
1、第三方调用本系统,参数接收不到 ,没有使用驼峰命名,或者传参格式不一致问题
2、前后端调试,接收不到个别参数
遇到的场景描述:
1,项目提供openapi接口,第三方调用推送数据,我们这边做大屏展示,但是有个字段ASname,没有接收到数据,本地有做个日志表用于记录第三方传递的原始数据记录,排查问题ASname确实有传递
2,可能是没有映射到字段属性,使用@JsonProperty(“xx”)注解知道指定字段,问题解决
3,第三方对接属性命名各种各样,接收方可以指定属性名用于接收数据
总结:
1,@JsonProperty 注解是 Jackson 库中的注解之一
2,@JsonProperty 用于指定JSON字段的名称,以便在序列化和反序列化过程中正确的映射属性
3,还可以解决一些没有使用驼峰命名,特殊字符串指定字段名称比如 task_name…
3,使用
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class NetworkDataObject implements Serializable {
private static final long serialVersionUID = 1L;
private String ip;
@JsonProperty("ASname")
private String ASname;
}