@JsonIgnore注解和@JSONField(serialize = false)

Posted 最小的帆也能远航

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@JsonIgnore注解和@JSONField(serialize = false)相关的知识,希望对你有一定的参考价值。

@JsonIgnore注解

作用:在json序列化时将pojo中的一些属性忽略掉,标记在属性或者方法上,返回的json数据即不包含该属性。

@Table(name = "tb_user")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
 
    private String username;// 用户名
 
    @JsonIgnore
    private String password;// 密码
 
    private String phone;// 电话
 
    private Date created;// 创建时间
 
    @JsonIgnore
    private String salt;// 密码的盐值
    
    //TODO  add getter setters
}

忽略掉,隐藏掉需要的字段
@JSONField(serialize = false)
例如账号查询时,是不能返回密码字段
只需要在密码处加个注解就完美实现了


    /**
     * 密码
     */
    @JSONField(serialize = false)
    private String password;

以上是关于@JsonIgnore注解和@JSONField(serialize = false)的主要内容,如果未能解决你的问题,请参考以下文章

@JsonIgnore

@JsonIgnore失效

@JsonIgnore 和 @Getter 注解

SpringBoot升级版本导致@JsonIgnore失效问题

fastjson的@JSONField注解

@JSONField注解