Java Hibernate MYSQL匹配模式
我在MYSQL中使用hibernate。我有一个关于hibernate MatchMode的问题。这是我的代码Java Hibernate MYSQL匹配模式,java,mysql,hibernate,string-matching,Java,Mysql,Hibernate,String Matching,我在MYSQL中使用hibernate。我有一个关于hibernate MatchMode的问题。这是我的代码 final org.hibernate.Session session = getHibernateTemplate().getSessionFactory().openSession(); Projection p = Projections.projectionList().add(Projections.property("id"),"id").add(Proje
final org.hibernate.Session session = getHibernateTemplate().getSessionFactory().openSession();
Projection p = Projections.projectionList().add(Projections.property("id"),"id").add(Projections.property("name"),"name");
Criteria criteria = session.createCriteria(Student.class).setProjection(p).add(Restrictions.ilike("name","richie",MatchMode.EXACT)).setResultTransformer(Transformers.aliasToBean(Student.class));
ArrayList<Student>students= new ArrayList<Student>(criteria.list());
for(Student student:students)System.out.println(student.getId()+" "+student.getName());
哎哟,我的错是我在更深入地检查,我在数据库中发现“richie”最后是一个空白。。但仍然像[a-z]不工作??为什么?HQL和Restrictions.ilike中没有正则表达式<像“[a-z]”这样的代码>将搜索“[a-z]”作为字符串,而不是正则表达式
select this_.ID as y0_, this_.name as y1_ from student this_ where lower(this_.name) like '[a-z]'