I have an entity:
@Entity
@Table(name = \"[Usermaster]\")
@Where(clause = \"isDeleted = 0\")
public class User {
//...
}
in some flow I nee
There is a dynamic version of the @Where
setting, it is the @Filter
. See:
Hibernate has the ability to pre-define filter criteria and attach those filters at both a class level and a collection level. A filter criteria allows you to define a restriction clause similar to the existing
"where"
attribute available on the class and various collection elements.
Management of @Filter is a bit more complex, in a nutshell:
/ @FilterDef
is needed to define filter
/ @Filter
must be assigned to class or a setsession.enableFilter("myFilter").setParameter("myFilterParam", "some-value");
So, this, while being a bit more complex, provides exactly what we need: dynamic @Where
to be turned on/off in run-time