Hibernate支持REST压缩
作为RESTAPI的一部分,我正在尝试解决一个问题 URI:Hibernate支持REST压缩,hibernate,Hibernate,作为RESTAPI的一部分,我正在尝试解决一个问题 URI: /sudents?fields=id,name,books /students?fields=id,name,books,rollNo,address 在hibernate中,Student是父实体Address是一个带有延迟加载的@onetoone映射,books是一个带有延迟加载的@onetomany映射 在hibernate中有没有一种方法可以用请求的字段列表填充student对象?我使用了投影来填充法线和@onet
/sudents?fields=id,name,books
/students?fields=id,name,books,rollNo,address
在hibernate中,Student
是父实体Address
是一个带有延迟加载的@onetoone
映射,books是一个带有延迟加载的@onetomany
映射
在hibernate中有没有一种方法可以用请求的字段列表填充student对象?我使用了投影
来填充法线和@onetoone
映射字段。但在《一家公司》(collection)的案例中,我发现很难
在hibernate中是否有解决此问题的实践,因为用户可以请求任何字段
提前感谢。因此您希望图书对象列表与学生实体一起加载。在这种情况下,您可以执行
Hibernate.initialize(student.getBooks())
获取与学生相关联的书籍列表。这能解决您的问题吗?在这种情况下,我宁愿使用criteria.setFetchMode(“resources”,FetchMode.JOIN)代码>。这两种方法都解决了延迟加载关联成为父对象的一部分而不是代理的问题。我的另一个问题是仅检索选定字段并与对象绑定。。这是我使用Projection
解决的问题,您可以使用直接HQL查询来投影数据String hql=“从id=parentId的表中选择FieldName1、FieldName2”;Query Query=currentSession().createQuery(hql);列表=列表(查询)代码>