我正在研究Spring MVC旧项目,目前,我们正在将spring(2)和hibernate(2)升级到最新版本。先前在该项目中,存在sql-query,并且在XML
文件中完成了实体映射,并且我们正在将实体映射从XML
升级到annotation
。对于基于查询结果集完成的实体映射,该问题正在发生。我只想将查询保留在XML文件中(,因为这是对4-5个表执行联接的非常大的查询),并且只需更改实体映射即可。以前,实体映射是这样完成的
<class name="ClassName" table="x" mutable="false">
<id name="id" column="id_col">
<generator class="assigned" />
</id>
<property name="linkId" ....
</class>
如何在基于注释的映射中注释table='x'
?
PS table="x"
并非示例,它仅在XML映射中以这种方式编写,并且在DB中没有名为x的表
答案 0 :(得分:0)
您可以这样使用
@Entity
@Table(name = "X")
public class ClassName {
}
在xml中的本机查询中
<sql-query name="findQuery">
<return alias="ClassName" class="ClassName"/>
select * from x
</sql-query>