json序列化懒加载问题
2016-04-14 14:50
591 查看
如果框架使用了json序列化对象,当配置了hibernate懒加载时,可能会抛出异常,或者出现N+1的问题,或者出现无限循环的问题。网上很多解决方案,
基本是这些:@JsonIgnore忽略可能出问题的属性,懒加载改为FetchType.EAGER,亦或者配置org.springframework.orm.hibernate3.support.OpenSessionInViewFilter等等。
先说说忽略属性:设置了忽略属性虽然能解决问题,但是当我们下次想使用该属性时却无法获取了,所以解决不了问题。
改为即时加载:冗余,当我们不需要这个属性的时候仍然会访问库查询,并且可能冗余不仅仅是一条记录。增加了数据库和网络传输开销。
我目前是这样解决的:
项目使用jackson,利用@jsonInclude属性忽略null对象,然后代码中把这个字段置空,这样json就不会去序列化这个字段了。
一直寻找好的解决方法,暂未找到,望路过大神指点一二。
基本是这些:@JsonIgnore忽略可能出问题的属性,懒加载改为FetchType.EAGER,亦或者配置org.springframework.orm.hibernate3.support.OpenSessionInViewFilter等等。
先说说忽略属性:设置了忽略属性虽然能解决问题,但是当我们下次想使用该属性时却无法获取了,所以解决不了问题。
改为即时加载:冗余,当我们不需要这个属性的时候仍然会访问库查询,并且可能冗余不仅仅是一条记录。增加了数据库和网络传输开销。
我目前是这样解决的:
项目使用jackson,利用@jsonInclude属性忽略null对象,然后代码中把这个字段置空,这样json就不会去序列化这个字段了。
一直寻找好的解决方法,暂未找到,望路过大神指点一二。
相关文章推荐
- 使用JSP制作一个超简单的网页计算器的实例分享
- json与bean的转换
- js前台实现上传图片的预览
- json
- 实例解析JSP中EL表达式的各种运用
- json对象和json字符串转化
- Javascript实现鼠标框选操作 不是点击选取
- js使用AjaxFileupload插件实现文件上传
- js移动客户端--触屏滑动事件
- ajax从后台向前台传数组
- js同步访问native的方法
- JS页面延迟执行一些方法(整理)
- js 获取mac地址
- js compress
- js中(function(){…})()立即执行函数写法理解
- javascript思维导图
- json api 接口们地址
- jsp点击事件
- javascript高级程序设计
- js中 visibility和display的区别 js中 visibility和display的区别