JPQL中不区分大小写的用户名检查

时间:2016-02-16 22:00:54

标签: jpql case-insensitive

我想在登录过程中创建一个不区分大小写的用户名检查。一个简单的NamedQuery返回User实体传递测试:

SELECT u FROM User u WHERE u.userName LIKE :userName AND u.password = :password

但这不像我喜欢的那样。它比较了userNames区分大小写。有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

行。我已经解决了!

NamedQuery:

SELECT u FROM UserWithRoles u WHERE LOWER( u.userName ) = :userName AND u.password = :password"

设置查询的bean代码:

q.setParameter( "userName", userName_.toLowerCase() );