hibernate - 使用Hibernate查找与数据库条目有关的短语的部分匹配

  显示原文与译文双语对照的内容
150 5

我有一个叫用户的实体:


public class User {
 private String title;
}

我向客户提供一个文本字段。 当他们输入一个短语我想找到所有的用户实体,它的名称包含给定短语。

例如在数据库中考虑以下标题的Having 条目列表:

[ Alan Smith, John Cane, Juno Taylor, Tom Caner Junior ]


英镑应返回 Taylor,而汤姆。Caner

return return Junior Junior Junior Junior Junior

可以从数据库中加载所有用户条目,然后检查标题是否包含给定的短语。

因此,我想在数据库层处理这个问题,最好使用一些。 请让我知道如果这是任何场景,是否有成本有效的方法实现这一点。

时间: 原作者:

139 5

你想使用一个我喜欢的限制。

沿着直线的东西


String value ="jun";
Criteria criteria = session.createCriteria(User.class);
criteria.add(Restrictions.ilike("title", value, MatchMode.ANYWHERE);

应该做的trick。

我不知道它有多高效,它可以能很有效,因为你的数据库( esp可以在Postgres中使用,并且可以在Postgres方言中使用该操作符) 。 它可能比获取所有内容,并在Java中过滤。

原作者:
...