java jackson 将对象转json时,忽略子对象的某个属性操作
时间:2021-05-23 08:06:25|栏目:JAVA代码|点击: 次
我就废话不多说了,大家还是直接看代码吧~
//父对象
public class user implements java.io.Serializable {
@JsonIgnoreProperties(value={"addressId"})//在解析成json时,忽略子属性的addressId字段
private Address address;
private String username;
//.........
}
//子对象
public class Address implements java.io.Serializable {
private int addressId;
private String address;
private String phone;
//..........
}
//注:当对象是hibernate查出来的代理对象时,一对多对象会给子对象注入handler和hibernateLazyInitializer属性,如果给jackson解析就会报错
//在一对多或多对一字段前加上@JsonIgnoreProperties(value={"handler","hibernateLazyInitializer"})即可
补充知识:SpringMVC 返回实体对象时屏蔽某些属性
SpringMVC 可以直接已JSON的结果返回实体对象,可是返回时是所有属性与属性值都会一并返回,
怎样才能屏蔽某些属性?方法很简单,只要在实体对象类中要屏蔽的属性值上加 @JsonIgnore 注解,如:
@JsonIgnore
private String authorPassword;
属性即可被屏蔽,就不用担心有该属性与属性值返回到客户端了。
另外,如果仅仅从 MyBatis 的 mapper 里面的 select 语句中只选需要的字段而不选需要被屏蔽的字段,
这种方法行不通,因为最后还是会返回所有属性,只不过未被选中的字段会有 null 的属性值。
栏 目:JAVA代码
下一篇:Java为什么匿名内部类参数引用需要用final进行修饰?
本文标题:java jackson 将对象转json时,忽略子对象的某个属性操作
本文地址:http://www.codeinn.net/misctech/127133.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




