fastjson在使用hibernate关系模型转json出现$ref解决办法
来源:互联网 发布:淘宝权限管理 编辑:程序博客网 时间:2024/06/14 04:13
问题描述
hibernate中的pojo类,如果引用了其他的表的主键做外键,就会生成外键表对应的pojo类。直接使用fastjson转化对象成为json的时候就会产生循环引用的情况,转换对象生成的对象出现$ref。需要
1.通过配置简单过滤器或者注解方式声明不序列化某列属性。
// JSON过滤List <taocan> list=TaocanDao.query(Taocan);
SimplePropertyPreFilter filter = new SimplePropertyPreFilter(
User.class, "userId");
//fastjosn自带的过滤器,允许配置只序列化那个属性,这里是序列化userId,这样对于在Taocan里的User的其他属性就不会去序列化生成json字符串
或者注解
private Integer taocanId;
@JSONField(serialize = false)
private Seller seller;
private String taocanTitle;
private String taocanIntroduce;
private Float taocanPrice;
private Float taocanDiscountPrice;
private Set taocanmenus = new HashSet(0);
@JSONField(serialize = false)
private Set orderses = new HashSet(0);
注解和过滤器可以组合使用,各有利弊。
2.设置增加参数SerializerFeature.DisableCircularReferenceDetect,禁止以引用方式引用对象。
String jsonStr=JSON.toJSONString(list, SerializerFeature.DisableCircularReferenceDetect); 0 0
- fastjson在使用hibernate关系模型转json出现$ref解决办法
- fastjson在使用hibernate关系模型转json出现$ref解决办法
- 解决使用fastJson中出现$ref问题
- fastjson生成JSON字符串的时候出现$ref
- fastjson生成JSON字符串的时候出现$ref
- Fastjson将object转为Json时避免出现"$ref"
- fastjson缺陷--map转换json时出现$ref的情况
- springmvc项目使用fastjson作为json处理器时出现重复引用、循环引用的解决办法
- 解析json对象出现$ref: "$.list[0]"的解决办法
- 使用fastjson出现json中键值与属性名不一致
- 使用Fastjson玩Json
- fastjson 阿里巴巴json使用
- 关于json-lib 和hibernate一起使用的时候出现死循环的解决办法
- 关于json-lib 和hibernate一起使用的时候出现死循环的解决办法
- 对象转化为json串的出现循环引用$ref $.s1解决办法
- fastjson把对象转化成json避免$ref
- fastjson把对象转化成json避免$ref
- fastJson 解决 把对象转化成json避免$ref
- 覆盖
- hihoCoder小试牛刀A+B
- python学习笔记(八)协程、爬取网页
- 江苏科技大学“FlySpiders”本创小组组员学习记录----王澳刚
- 2
- fastjson在使用hibernate关系模型转json出现$ref解决办法
- 【优化】大数据量内表优化技巧
- Spring入门学习——使用应用事件进行通信
- javascript的征程五--数组
- 图的广度优先搜索来求从一个城市到另一个城市的路径及其所经过城市最少
- 样式初始化
- 回溯法 解决 8皇后问题
- C语言笔记1
- c++第五次作业