Я перевожу некоторые из моих hql-операторов в критерии, теперь я решаю одну проблему:
Свойство объекта имеет тип Integer, но мне нужно подобное с поиском по шаблону, поэтому в hql я делаю
session.createQuery("from P1 where id like :id").setString("id", "%"+s+"%")
Никаких проблем, Hibernate переводит String в Integer.
Если я попробую это в Criteria, я получу только ClassCastException
String cannot be cast to Integer
Criteria crit = sessionFactory.getCurrentSession().createCriteria(P1.class);
crit.add(Restrictions.like("id",s)).addOrder(Order.asc("id")).setMaxResults(maxResults);
Почему Hibernate по-разному обрабатывает обе ситуации?