我试图弄清楚如何选择对象列表作为 Hibernate group-by 查询的一部分。我知道如何以更难的方式做到这一点,但我很好奇是否有一些特殊的糖语法可以实现相同的目标。
基本上,我对这个结构有一个查询:
select com.myapp.domain.TagSummary(
tag.id, tag.term, tag.description, tag.synonyms, count(user)
)
from User user
join user.tags tag
我想将其存储tag.synonyms
为List<Tag>
. 这可能吗,还是我需要查询叉积并在查询结果返回后手动进行分离?
或者,我最终真正想要的是用逗号分隔的同义词列表。因此,如果标签 isspring
并且它具有同义词spring-framework
and spring-framework-3.1
,那么将 string 放入构造函数中会很棒spring-framework, spring-framework-3.1
。那可能吗?
编辑:我了解到我可以使用 group_concat() 来实现功能的后半部分,但它仅在 MySQL 中可用。有没有办法让它在 hsqldb 中也可用?在 Spring 3.1 中,如何将此功能添加到 Hibernate?我知道我应该调用一些东西Configuration
,但我不知道通过什么 bean 来访问它。