方法一:
后台代码:
@RequestMapping(value = “listAllLBs.json”, method = RequestMethod.GET)
@ResponseBody
public Object listAllLBs( HttpSession session){
List lUnits = new ArrayList<>();
lUnits = lUnitService.listAllLUnits();
SimplePropertyFilter filter = new SimplePropertyFilter();
return JSONObject.toJSONString(lUnits, filter);
}
/**
- 使用fastjson去除hibernate懒加载的属性,懒加载的属性不获取
*/
class SimplePropertyFilter implements PropertyFilter {
@Override
public boolean apply(Object object, String name, Object value) {
if (value instanceof HibernateProxy) {//hibernate代理对象
return false;
} else if (value instanceof PersistentCollection) {//实体关联集合一对多等
PersistentCollection collection = (PersistentCollection) value;
if (!collection.wasInitialized()) {
return false;
}
Object val = collection.getValue();
if (val == null) {
return false;
}
}
return true;
}
}
方法二:
设置fetch=join,类似于hql查询的时候采用联合查询