Java 如何在Hibernate筛选器中动态附加条件查询
我在一个实体上使用了hibernate筛选器Java 如何在Hibernate筛选器中动态附加条件查询,java,hibernate-filters,Java,Hibernate Filters,我在一个实体上使用了hibernate筛选器 @Entity @Cacheable @Table(name="table_check") @NamedQueries({ @NamedQuery(name = "table_check.check_condition1", query = "SELECT obj FROM table_check obj WHERE 1 = 1") }) @XmlRootElement @FilterDefs({ @FilterDef(name="
@Entity
@Cacheable
@Table(name="table_check")
@NamedQueries({
@NamedQuery(name = "table_check.check_condition1", query = "SELECT obj FROM table_check obj WHERE 1 = 1")
})
@XmlRootElement
@FilterDefs({
@FilterDef(name="table_test_filter" ,
defaultCondition="test_condition = :param1")
})
@Filters({
@Filter(name="table_test_filter")})
public class Table extends TableChecksEntity implements java.io.Serializable {
private static final long serialVersionUID = 1L;
}
在启用此过滤器之前,我需要通过java代码生成一个动态查询
此查询字符串将包含当前实体以外的一个或多个表(基本上是与当前实体的联接)
是否可以将此查询字符串添加到上述hibernate筛选器(将通过hibernate注释创建)?否,不可能。而且,除非您有一个非常特殊的用例,否则这可能不是JPA的“正确”方式。