我在使用json传递数据的时候,常常会遇到问题,就是数据库映射的实体和文件里面会有一些外键映射成实体对象成为实体的属性。如果我们通过hibernate查询数据库,返回数据,那么这些实体的数据是不会序列化的所有我们解决的方法是在遇到的实体类加入忽略当前引用对象属性的注解例如
/**
* MmsMaterial entity. @author MyEclipse Persistence Tools
*/
@JsonIgnoreProperties(value={"hibernateLazyInitializer","mmsFourthResources"})
public class MmsMaterial implements java.io.Serializable {
// Fields
/**
*
*/
private static final long serialVersionUID = 3843271119222712256L;
private String materialId;
private MmsFourthResources mmsFourthResources;
private String materialName;
private String materialModel;
private String materialType;
//添加JsonIgn添加的显示字段
private String mmsFourthResourcesName;
略setget方法
在这个红色的就是引用的实体对象在进行数据传递的时候不能序列化json,那么我们就要添加相应的字符型的值进行数据的组合,也就是拿到查询的list把这个对象的值使用的属性从新set到新的字段,然后进行json数据传递到前台进行数据展示。