Java Hibernate LazyCollection和自定义筛选器
我想获得活动实体的数量,因此我有过滤器:Java Hibernate LazyCollection和自定义筛选器,java,hibernate,lazy-loading,Java,Hibernate,Lazy Loading,我想获得活动实体的数量,因此我有过滤器: @FilterDef(name = "onlyActive", defaultCondition = "IS_ACTIVE = '1'") 然后我将其与lazyCollection一起使用: @OneToMany(mappedBy = "databaseInstance") @LazyCollection(LazyCollectionOption.EXTRA) @Filter(name = "onlyActive") public Lis
@FilterDef(name = "onlyActive",
defaultCondition = "IS_ACTIVE = '1'")
然后我将其与lazyCollection一起使用:
@OneToMany(mappedBy = "databaseInstance")
@LazyCollection(LazyCollectionOption.EXTRA)
@Filter(name = "onlyActive")
public List<CloudInstance> getCloudInstances() {
return cloudInstances;
}
我明白了
它不会将IS_ACTIVE='1'附加到查询,因此筛选器不起作用。当我删除@LazyCollection并添加eager fetch时,过滤器工作正常。是否可以使此筛选器与惰性集合一起工作
getCloudInstances().size();
select count(ID) from CLOUD_INSTANCES where databaseInstance_ID =?