问题:javaBean对象如何指定部分属性 然后转为json字符串
问题描述
javabean中有很多属性,但是实际上只需要一部分属性转为json字符串,
请问 如何控制只会将指定的属性转为json字符串??
问题解答
回答1:不知道是存储在哪里,如果需要序列化可使用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
回答2:试试在属性上加 @JsonIgnore,忽略掉该属性
回答3:具体看你使用的转json的框架,不同的框架处理的方法不一样,建议看看文档
回答4:1.使用JSON框架内置的方法,比如Jackson提供@JsonIgnore的注解。
2.仿照JsonIgnore,自定义个注解,在转换过程中,通过JAVA的反射和Annotated相关类,判断并处理到,这种方法自定义能力比较强,比如可以将所有null值的都不转换,或者将日期属性按照不同的format转换。
3.自定义一个中间类,只包含需要转换的属性,然后数据对象,向中间类对象赋值,最后转换中间类对象,这样不包含的属性,不会出现。
相关文章:
