Hibernate: Case Insensitive Query

We ran into a situation where we needed to match a string from our application to a string in the database. A very common task. But this time we needed it to be a case insensitive match. In order to do that using Hibernate annotations, we ended up using Restrictions.ilike().

Here is some example code:

public List fetchByCountry(String country)

{

DetachedCriteria criteria = DetachedCriteria.forClass(MobileCarrier.class);

criteria.add(Restrictions.ilike("country", country, MatchMode.EXACT));

return getHibernateTemplate().findByCriteria(criteria);

}


The ilike method is a case insensitive like statement, and when combined with a MatchMode.EXACT, it accomplishes the task of an exact string case insensitive match.


As an Amazon Associate I earn from qualifying purchases.

My favorite quotations..


“A man should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.”  by Robert A. Heinlein

"We are but habits and memories we chose to carry along." ~ Uki D. Lucas


Popular Recent Articles