NoResultException 找不到要查询的实体

NoResultException No entity found for query

请问我找不到问题出在哪里,即使我手动传递与存储在数据库中的登录匹配的字符串,当我将“=”更改为 "like" 时,它总是显示空值它工作正常,问题是喜欢它 return 所有以字符串开头的行我不知道出了什么问题,这是我的代码谢谢,对不起我的英语。

public Utilisateur getUserByLogin(String login) {
    Query req=em.createQuery("select u from Utilisateur u where u.login  =:login ");
    req.setParameter("login", "%"+login+"%");
    Utilisateur u = null;
    try{
         u = (Utilisateur)req.getSingleResult();
                }
        catch (NoResultException nre){

        }

        if(u == null){
         return null;
        }else{
            return u;
        }
}

试试

    req.setParameter("login", login);