Критерии jpa запроса абстрактного класса
У меня есть основной класс, где применяются мои критерии
Criteria criteria = manager.unwrap(Session.class).createCriteria(MyClass.class);
и у меня есть фильтр для применения критериев ограничений. Помимо использования критериев в Myclass.class
в полях (id
, name
,date
) лайк
if(filter.getNameFilter()!=null && !filtro.getNameFilter().isEmpty()) {
criteria.add(Restrictions.ilike("name", "%"+filtro.getNameFilter()+"%" ));
}
У меня есть отношения между MyClass
- MyClass2
- Myclass3
Тем не мение, MyClass3
абстрактный класс, и мне нужно использовать ограничение в расширяет класс из MyClass3
public abstract MyClass3{
Integer id;
}
public mychild extends MyClass3{
String name;
}
Чтобы применить ограничение в одном поле, которое находится в myclass2
я использовал
DetachedCriteria FilterNat = DetachedCriteria.forClass(MyClass2.class,"bonat");
и использовал проекцию, чтобы использовать ограничение в конкретной области в MyClass2
Но мне нужно применить ограничение в классах от MyClass3
, Как я могу это сделать?