I don't think hibernate is the matter here.
What database are you using ? (you should retag your question to add at least the db implementation you are using).
For example mysql do not do case sensitive comparison by default. Look here : http://mysqldatabaseadministration.blogspot.com/2006/09/case-sensitive-mysql.html on how to make mysql do case sensitive comparison.
EDIT:
like said in the link i've pasted, you can do it at the table creation, by setting a special character set, like that :
###########
# Start case sensitive collation example
###########
mysql> create table case_cs_test (word VARCHAR(10)) CHARACTER SET latin1 COLLATE latin1_general_cs;
Query OK, 0 rows affected (0.08 sec)
mysql> INSERT INTO case_cs_test VALUES ('Frank'),('Google'),('froogle'),('flickr'),('FlicKr');
Query OK, 5 rows affected (0.00 sec)
Records: 5 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM case_cs_test WHERE word LIKE 'F%';
+---------+
| word |
+---------+
| Frank |
| FlicKr |
+---------+
4 rows in set (0.00 sec)
mysql> SELECT * FROM case_cs_test WHERE word LIKE 'f%';
+---------+
| word |
+---------+
| froogle |
| flickr |
+---------+
2 rows in set (0.00 sec)
###########
# end
###########