use*_*325 4 hibernate jpa playframework
我的游戏中有一个休眠实体!由 mysql 数据库和使用 JPA 查询的项目。
我现在想要做的是向我的应用程序添加一个“存档”工具,就用户而言删除该实体。
然而,仍有其他实体将引用它,因此我无法删除该实体,而且我希望能够从存档中恢复它。
但是,我不希望它默认出现在列表或搜索中,但当然在某些情况下仍然需要能够访问那里的数据,例如当用户检查引用它的项目时。
有许多引用实体的查询,我可以为每个查询添加一个 WHERE 子句,但我也使用了一些内置的查询方法,例如 findAll()。
我认为如果我能以某种方式默认添加 where 子句会更清晰。
有没有办法做到这一点?
小智 5
您在这里有两种解决方案:
如果您使用的是 Hibernate,您可以@Where(clause = "column to filer")在实体 bean 上使用。
@Entity
@Where(clause = "isActive='false'")
public class Product {
//...
@Column
private Boolean isActive;
}
或者,如果使用 EclipseLink JPA 实现,则@AdditionalCriteria("column to filer")用于定义数据的参数化视图。
@Entity
@AdditionalCriteria("isActive='false'")
public class Product {
//...
@Column
private Boolean isActive;
}
欲了解更多信息:
| 归档时间: |
|
| 查看次数: |
6449 次 |
| 最近记录: |