Cycle Exception, PO在json序列化时发生死循环

Exception in thread "main" net.ssk.json.JSONException: There is a cycle in the hierarchy!

pojo中对象存在有死循环问题,解决方法:
方法 1: 建一个 VO 类。


     public String findAllSingleTest(){//代码示例、
List mapSmallList = mapSmallService.getAll();
return ajaxByObjectListAndMap(mapSmallVO.formatToVo(mapSmallList), null);
}


VO类(只是示例):

package net.ssk.vo;

public class MapSmallVO {
private String id;
private String username;

public static List<MapSmallVO> formatToVo( List<MapSmall> mapSmallList){
Logger log = Logger.getLogger(MapSmallVO.class);
try {
if(mapSmallList != null && mapSmallList.size() > 0){
List<MapSmallVO> voSet = new ArrayList<MapSmallVO>();
for(MapSmall m : mapSmallList){
MapSmallVO vo = new MapSmallVO();
vo.setId(m.getMember().getId()); vo.setUsername(m.getMember().getUsername());
voSet.add(vo);
}
return voSet;
}
} catch (Exception e) {
log.error(e);
e.printStackTrace();
}
return null;
}
//这里要加上各个成员变量(属性)的get、set方法。

}


方法 2:再建一个含有所需json序列化属性的类。


public String findAllSingle(){
List<MapSmall> mapsmalllist = mapSmallService.getAll();
List<MapSmallEntity> currentMapSmallEntityList = new ArrayList<MapSmallEntity>();
for (MapSmall mapsmall : mapsmalllist) {
MapSmallEntity mapsmallEntity = MapSmallEntity.changeMapSamllToAndroidEntity(mapsmall);
currentMapSmallEntityList.add(mapsmallEntity);
}
return ajaxByObjectListAndMap(currentMapSmallEntityList, null);
}


//含有所需json序列化属性的类(示例)。

package net.ssk.entity;

public class MapSmallEntity {
private String id; //id号

public static MapSmallEntity changeMapSamllToAndroidEntity(MapSmall mapsmall){
MapSmallEntity mapsmallEntity = new MapSmallEntity();
mapsmallEntity.setId(mapsmall.getId());
return mapsmallEntity;
}
//这里要加上各个成员变量(属性)的get、set方法。
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值