15

我的数据库中有一个名为的表Samples,它有一个名为的列baseline,它是一个布尔变量。我想在baseline设置为的行中搜索1,所以我在数据库(MySQL)中创建了一个视图。现在,Samples我想查询这个视图(名称为Baselines),而不是查询表。

我是否需要在 hibernate cfg 文件中为此视图添加声明?另外,我是否需要创建另一个以此命名Baselines的 Java 类?

4

1 回答 1

17

Hibernate 可以像对待任何表一样对待视图。只需根据该视图定义一个实体类(Baselines如您所说)。

视图最常见的困难是某些数据库引擎无法处理视图上的插入或更新,因此如果您的应用程序试图修改数据,请注意这一点。我不知道MySQL是否能够做到这一点。

使用视图的另一种方法是使用Hibernate Filters,它们的作用大致相同,但在 Hibernate 会话级别。

于 2012-05-08T09:43:23.180 回答