微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

@json 注解

JSON是一种轻量级的数据交换格式,经常用于前后端数据交互。在Java中,我们通常使用Jackson或者Gson等库来序列化和反序列化JSON数据。其中,@json注解是Jackson库中的一种注解,它用于控制JSON序列化和反序列化时的属性配置。

@JsonFormat

@json 注解

该注解用于指定JSON格式化方式。比如我们可以使用它来指定日期类型的格式化方式:

public class User {
  
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    // getter and setter
}

这个注解的作用是告诉Jackson,将createTime属性序列化为一个格式为"yyyy-MM-dd HH:mm:ss"的字符串。反过来,当反序列化JSON字符串时,Jackson也能将这个字符串正确地转换为Date类型。

@JsonIgnore

该注解用于指定在JSON序列化和反序列化时忽略某个属性,比如这个属性是敏感数据或者没有必要返回给前端的。

public class User {
  
    private Long id;

    @JsonIgnore
    private String password;

    private String name;

    // getter and setter
}

这个注解的作用是告诉Jackson,密码信息在JSON序列化和反序列化时都不需要。当然,这并不意味着我们在Java代码中就无法获取或者修改这个属性

@JsonProperty

该注解用于指定在JSON序列化和反序列化中的属性名。

public class User {
  
    private Long id;

    @JsonProperty("username")
    private String name;

    // getter and setter
}

这个注解的作用是告诉Jackson,在JSON序列化和反序列化中,name属性应该使用"username"这个名称

除了这些注解,Jackson库还有很多其他功能强大的注解,可以根据需求进行选择和使用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐