【发布时间】:2017-09-06 11:07:09
【问题描述】:
我是 JPA 的新手 - 我已经开始构建用户系统并将编码 bean 添加到我的 pom 中。
当我在表格中搜索一个电子邮件地址时 - 它会找到用户并返回数据。
TblLogin acc = tblLoginRepository.findByEmail(email);
我为此拥有的仓库如下。
public interface TblLoginRepository extends JpaRepository<TblLogin, String> {
TblLogin findByEmail(String email) throws Exception;
}
-- 当我尝试使用编码的密码进行查找时,它找不到用户 - 我不确定为什么数据看起来正确?
有密码
TblLogin checkAccount = tblLoginRepository.findByEmailAndPassword(email,passwordEncoder.encode(password));
repo2
public interface TblLoginRepository extends JpaRepository<TblLogin, String> {
TblLogin findByEmail(String email) throws Exception;
TblLogin findByEmailAndPassword(String email, String password) throws Exception;
}
--
是不是因为我的密码类型改变了? - 它应该检查其他东西吗...
【问题讨论】:
-
你到底想要什么?有什么问题?
-
--好的-我正在获取用户帐户的数据-我可以看到当我尝试登录时-密码编码实际上正在改变-所以它不会找到结果...有没有一种方法可以让相同的编码结果与存储在数据库中的内容进行匹配——类似于 md5(x)
-
编码是如何变化的?您是否将 PasswordEncoding 声明为 bean?你在“保存”过程中使用它吗?
-
--好的,所以我注册了用户-使用 PasswordEncoding.encode(password)
标签: java jpa spring-boot