Hibernate 以编程方式休眠过滤器

Hibernate 以编程方式休眠过滤器,hibernate,filter,hibernate-mapping,hibernate-annotations,Hibernate,Filter,Hibernate Mapping,Hibernate Annotations,如何通过编程实现相同的结果(如以下注释所实现的)?或者在spring配置文件中注入值“SMITH” @Filter(name="smithFilter", condition="LAST_NAME = 'SMITH'") public String getLastName() { return this.lastName; } 只需使用过滤条件将接收的参数定义一个FilterDef: @FilterDef(name = "smithFilter", parameters = {@Par

如何通过编程实现相同的结果(如以下注释所实现的)?或者在spring配置文件中注入值“SMITH”

@Filter(name="smithFilter", condition="LAST_NAME = 'SMITH'")
public String getLastName()
{
    return this.lastName;
}

只需使用过滤条件将接收的参数定义一个FilterDef:

@FilterDef(name = "smithFilter", parameters = {@ParamDef(name = "lastName", type = "string")})
@Filter(name="smithFilter", condition="LAST_NAME = :lastName")
由于您还使用了“以编程方式”一词,您可能还想知道您可以基于其他输入设置参数,如下所示:

session.enableFilter("smithFilter").setParameter("lastName", "SMITH");
Hibernate文档中的更多详细信息: