我有一个搜索框,需要搜索不同的字段,如名字,姓氏和电子邮件。根据我当前的代码,如果用户输入字符'm',所有用户将在显示所有电子邮件时显示,并且所有用户都包含在.com中的'm'。
我想知道如何更改它以便能够搜索fname,lname和email,但它会排除电子邮件中@之后的所有字符。例如yahoo.com,hotmail.com,yahoo.com.us等。
criteria.add(Restrictions.disjunction()
.add(Restrictions.ilike("client.email", "%" + value + "%"))
.add(Restrictions.ilike("user.fname", "%" + query + "%"))
.add(Restrictions.ilike("user.lname", "%" + query + "%")));
答案 0 :(得分:1)
您可以尝试:
criteria.add(Restrictions.disjunction()
.add(Restrictions.ilike("client.email", "%" + value + "%@%"))
.add(Restrictions.ilike("user.fname", "%" + query + "%"))
.add(Restrictions.ilike("user.lname", "%" + query + "%")));