Java 我们如何在hibernate中查询返回映射对象的对象?

Java 我们如何在hibernate中查询返回映射对象的对象?,java,hibernate,Java,Hibernate,我有一个实体订阅具有以下属性 名称,提单,有效期(日期),有效期(日期) 样本数据: Name BillOfLading ValidTo ValidFrom A 100101 1/28/2016 3/28/2017 A 100102 1/29/2016 3/29/2017 B 100103 1/30/2016 3/30/2017 C 100104

我有一个实体订阅具有以下属性

名称,提单,有效期(日期),有效期(日期)

样本数据:

Name BillOfLading ValidTo ValidFrom A 100101 1/28/2016 3/28/2017 A 100102 1/29/2016 3/29/2017 B 100103 1/30/2016 3/30/2017 C 100104 1/31/2016 3/31/2017 A 100105 1/28/2016 3/28/2017 从有效到有效的名称提单 A 100101 1/28/2016 3/28/2017 A 100102 1/29/2016 3/29/2017 B 100103 2016年1月30日2017年3月30日 C 100104 2016年1月31日2017年3月31日 A 100105 1/28/2016 3/28/2017 这里我试图在表单映射中得到结果

Map<String,List<Subscription>>
Map
映射包含(键,值)对,其中名称为键,订阅列表属于指定名称

假设名称A有3条记录,那么现在键将是A,值将是属于A的订阅列表

而且我还需要根据订阅数对Map进行排序,以DB为单位

注:以上是我的场景的一个简短故事。所以,我没有把我的实际代码


如果有可能在hibernate中返回地图,请帮助我

我不认为可以通过JPQL/HQL查询返回
Map

我从JPQL返回了
Map
s,例如:

   @Query("SELECT new map(r.code, r.name) FROM Substance r GROUP BY r.code, r.name")
   List<Map<String, String>> select();
@Query(“按r.code,r.name从物质r组中选择新地图(r.code,r.name))
列表选择();

如果您需要一个复杂的返回类型,请查看Hibernate的接口及其实现,它可以定制您想要的结果。我从来没用过这个。有一篇博客文章展示了此界面的使用情况:

您使用的是Hbm还是jpa?我还可以建议你不要发布客户数据,至少要更改他们的名字。我使用的是Hbm。事实上,这些都与客户无关。我使用JPA随机选取数据,同时使用自动排序的意志从数据库中获取值。期待hibernate中的解决方案。我不能用JPA。最近,我们从JPA转向hibernate@Lova ChittumuriAFAIK在Hibernate中没有解决方案。在这方面也做了类似的事情,但是它使用了一个专门的MultiMap类(使用集合而不是列表),并且不对包含的集合进行排序。