Java HQL接受通配符并显示匹配的记录

Java HQL接受通配符并显示匹配的记录,java,sql,hibernate,jakarta-ee,Java,Sql,Hibernate,Jakarta Ee,我的要求是接受文本框中的通配符,并显示匹配的记录。 目前我正在从事一个维护项目,不知道如何修改用hibernate(HQL)编写的现有代码,以便在查询中接受通配符并显示匹配的记录。 以下是通配符条件: %=0到多个字符 _=1个字符 在普通的SQL查询中,我知道我们使用like来接受通配符。请看下面的样品 select * from emp where empname like '%_%'; 请建议我在使用hibernate(HQL)时如何操作 下面是我的示例代码: public Action

我的要求是接受文本框中的通配符,并显示匹配的记录。 目前我正在从事一个维护项目,不知道如何修改用hibernate(HQL)编写的现有代码,以便在查询中接受通配符并显示匹配的记录。 以下是通配符条件: %=0到多个字符 _=1个字符

在普通的SQL查询中,我知道我们使用like来接受通配符。请看下面的样品

select * from emp where empname like '%_%';
请建议我在使用hibernate(HQL)时如何操作

下面是我的示例代码:

public ActionForward performSearch(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {

        MySearchForm searchForm = (MySearchForm) form;
        ActionMessages messages = new ActionMessages();
        searchForm.getSearchCriteria().setDoSearch(messages.isEmpty());

        if (!messages.isEmpty()) {
            addErrors(request, messages);
        }

        loadFormData(searchForm, request);

        return mapping.findForward("success");
    }

“%=0到多个字符=1个字符”的确切含义是什么?@alacambra检查SQL通配符的定义,
%
相当于
*
(在正则表达式中),
到OP:您正在谈论的是HQL-但您的代码片段中没有与Hibernate或HQL相关的内容。您应该发布创建查询的摘录。