最近偷点时间更新一下框架,使用SpringBoot2.0 整套一起更新一下,发现些小问题
Spring data jpa getOne 返回的是代理对象,延迟加载的,ResponseBody成Json的时候会有序列化问题,网上的都说加上这个就好了,这样是能返回.
@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"})
但是经过自定义的,但是自定义ObjectMapper,Json属性解析就出问题了,因为类型是代理对象的类型,后面有一个恶心的$$_jvsteaf_什么鬼东西.反正就是代理对象.导致类型判定不正确
Jpa 有两个根据id的查询方法,直接调用repository的getOne 会延迟加载,返回代理对象,使用findById 返回Optional ,真实对象.
我认为在业务代码中使用findOne 也许能提高那么一点性能,在要直接返回detail的时候,还是用findById吧.
原文地址:https://www.cnblogs.com/sweetchildomine/p/9189294.html
时间: 2024-10-08 08:11:10