我想在登录过程中创建一个不区分大小写的用户名检查。一个简单的NamedQuery返回User实体传递测试:
SELECT u FROM User u WHERE u.userName LIKE :userName AND u.password = :password
但这不像我喜欢的那样。它比较了userNames区分大小写。有人能帮助我吗?
答案 0 :(得分:0)
行。我已经解决了!
NamedQuery:
SELECT u FROM UserWithRoles u WHERE LOWER( u.userName ) = :userName AND u.password = :password"
设置查询的bean代码:
q.setParameter( "userName", userName_.toLowerCase() );