javabean中有很多属性,但是实际上只需要一部分属性转为json字符串,
请问 如何控制只会将指定的属性转为json字符串??
不知道是存储在哪里,如果需要序列化可使用transient关键字。
class User implements Serializable { private static final long serialVersionUID = 8294180014912103005L; private String username; private transient String passwd; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPasswd() { return passwd; } public void setPasswd(String passwd) { this.passwd = passwd; } }
其中,passwd始终为null
试试在属性上加 @JsonIgnore,忽略掉该属性
具体看你使用的转json的框架,不同的框架处理的方法不一样,建议看看文档
1.使用JSON框架内置的方法,比如Jackson提供@JsonIgnore的注解。
2.仿照JsonIgnore,自定义个注解,在转换过程中,通过JAVA的反射和Annotated相关类,判断并处理到,这种方法自定义能力比较强,比如可以将所有null值的都不转换,或者将日期属性按照不同的format转换。
3.自定义一个中间类,只包含需要转换的属性,然后数据对象,向中间类对象赋值,最后转换中间类对象,这样不包含的属性,不会出现。
不知道是存储在哪里,如果需要序列化可使用transient关键字。
其中,passwd始终为null
试试在属性上加 @JsonIgnore,忽略掉该属性
具体看你使用的转json的框架,不同的框架处理的方法不一样,建议看看文档
1.使用JSON框架内置的方法,比如Jackson提供@JsonIgnore的注解。
2.仿照JsonIgnore,自定义个注解,在转换过程中,通过JAVA的反射和Annotated相关类,判断并处理到,这种方法自定义能力比较强,比如可以将所有null值的都不转换,或者将日期属性按照不同的format转换。
3.自定义一个中间类,只包含需要转换的属性,然后数据对象,向中间类对象赋值,最后转换中间类对象,这样不包含的属性,不会出现。