我在 MYSQL 中使用休眠。我有一个关于休眠 MatchMode.EXACT 的问题,这是我的代码。
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());
当使用 START,END,ANYWHERE 工作正常时,我的问题是为什么 EXACT 不匹配?
在这种情况下,我通过 Richie 进行查询,并且在 DB 中存在一个 Richie。
我想知道 like[EXACT] 是否必须是正则表达式?
如果这就是为什么这没有返回任何结果?mySQL 查询。
select this_.ID as y0_, this_.name as y1_ from student this_ where lower(this_.name) like '[a-z]'