質問: (User) entityManager .createQuery("from User as u where u.userName=:uname and u.passWord=:pwd") .setParameter("uname", user.getUserName()) .setParameter("pwd", user.getPassWord()).getSingleResult(); ``` 上記のクエリは正常に動作していますが、大文字と小文字は区別されません。パスワードに大文字と小文字を区別したい
回答: 私はあなたが正しい問題を解決するかどうかはわかりません。セキュリティ上の理由から、パスワードをプレーンテキストとしてDBに保存しないでください。パスワードからハッシュ(例えばMD5)を計算し、それをvarcharまたはchar(n)フィールドにヘキサ番号として格納する必要があります。「a」と「A」のハッシュが異なるため、大文字と小文字の区別は気にする必要はありません。