在Hibernate中不区分大小写查询

一、内容忽略大小写

name是Person类的属性名,“jjj”是你要查询该类的值。

// 注意这儿使用了 ignoreCase 方法。

list = sess.createCriteria(Person.class).add(Restrictions.eq("name", "jjj").ignoreCase()).list();
System.err.println(">>:"+list);

  

二、字段忽略大小写

首先,必须要创建数据库时,指字某个列为区别大小写:
CREATE TABLE person(
  id VARCHAR(32) PRIMARY KEY,
  NAME VARCHAR (30) BINARY   // 此列使用了 binary,是指区别大小写的查询
);
然后在 Hibernate 中:
String hql = "from Person where lower (name)='jjj'";   // 注意这儿使用的 lower 关键字
List list = sess.createQuery(hql).list()
System.err.println(list);

posted @ 2022-06-13 14:59  信铁寒胜  阅读(503)  评论(0编辑  收藏  举报