我的仓库有一个方法,通过电子邮件找到用户,我使用查询注解和一些参数,但它不工作,它返回?。这是详细信息:存储库类:
package com.baothien.server.repository;
import com.baothien.server.model.Users;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
public interface UserRepository extends JpaRepository<Users, Long> {
@Query("SELECT u FROM Users u WHERE u.email = :email")
List<Users> findUserByEmail(@Param("email") String email);
}
在我的服务类中获取userlist的方法:
public List<Users> getAllByEmail(String email) {
return userRepository.findUserByEmail(email);
}
当我测试时,它返回:
休眠:选择u1_0。id,u1_0.email,u1_0.full_name,u1_0。密码,u1_0。role_num from users u1_0其中u1_0.email=?
在where条件下,u1_0。email=?,为什么会返回?但没有用我需要解决方案,非常感谢您的阅读和解决!
我读了很多JPA文档,遵循它,但仍然不起作用。
1条答案
按热度按时间w9apscun1#
出示外卡是正确的行为。
它被称为准备好的声明。驱动程序将准备它并传递参数,该参数将被隐藏用于日志。假设您插入了一个密码字段,哈希密码显示在日志中。太可怕了
如果你还想展示它,有一个真实的的原因。在配置中添加以下行。