使用 spring boot JPA hibernate 存储库检查用户名和密码的 Mysql 查询不起作用。我该怎么办?
Posted
技术标签:
【中文标题】使用 spring boot JPA hibernate 存储库检查用户名和密码的 Mysql 查询不起作用。我该怎么办?【英文标题】:Mysql query to check username & password using spring boot JPA hibernate repository is not working. what should I do? 【发布时间】:2021-07-19 05:24:48 【问题描述】:@Query("select u from users u where u.username = :username and u.password = :password")
Optional<User> login(@Param("username")String username, @Param("password")String password);
我想运行上述查询,但出现以下错误:
Error creating bean with name 'userController': Unsatisfied dependency expressed through field 'userService';
nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through field 'userRepository';
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.ezest.bunge.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed;
nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.Optional com.ezest.bunge.repository.UserRepository.login(java.lang.String,java.lang.String)
请帮帮我,我一直在尝试解决这个问题,但没有得到确切的解决方案
【问题讨论】:
请显示您的用户存储库类 【参考方案1】:在查询中使用实体类名而不是表名,因为它是 JPQL 查询。
Query("select u from User ...")
【讨论】:
以上是关于使用 spring boot JPA hibernate 存储库检查用户名和密码的 Mysql 查询不起作用。我该怎么办?的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot中使用Spring Data JPA示例
如何在 Spring Boot 中使用 Hibernate/JPA 返回多级 json
JPA/Hibernate 在 Spring Boot 应用程序中插入不存在的表