我有一个DetachedCriteria,我用它来搜索基于名称字段的表。我想让搜索不区分大小写,并且想知道是否有办法在不使用HQL的情况下执行此操作。类似的东西:
private void searchByFullName(DetachedCriteria criteria, String searchCriteria) {
criteria.add(Restrictions.like("fullName", "%" + searchCriteria.toUpperCase() + "%"));
criteria.addOrder(Order.asc("fullName"));
}
但我想确保它在搜索时会忽略这种情况,因此它生成的SQL应该类似于:
SELECT * FROM PEOPLE WHERE ? LIKE toUpper(FULL_NAME);