我们正在尝试从.hbm.xml文件迁移到Hibernate注释。
我正在搜索以下XML的注释:
<set name="someSet">
<subselect>
<![CDATA[some long SQL query]]>
</subselect>
<key column="fk" />
<element type="MyUserType" column="value" />
</set>
我知道有@Subselect
,但我不确定如何将它用于我的问题。
我找到了this question,但据我所知,我不想为整个实体定义一个视图,只是针对那个字段。
在MyUserType
上声明它并没有实现我的目标,因为它适用于所有使用MyUserType
的地方。我需要继承MyUserType
,还是有更好的方法?
答案 0 :(得分:0)
@OneToMany(mappedBy = "department", fetch = FetchType.LAZY)
@Fetch(FetchMode.SUBSELECT)
private List<Employee> employees = new ArrayList<>();
答案 1 :(得分:0)
我们最终使用数据库视图来解决此问题。
不幸的是,它会将查询与代码分开,但这是意外破坏某些东西的机会最少的方法。
据我所知,没有直接的@Subselect
注释来替换该hbm构造。