当前位置: 首页 > 知识库问答 >
问题:

spring MVC:自定义查询的jpa存储库错误

子车轶
2023-03-14

我使用jpa存储库进行自定义查询。但我发现了错误

错误日志:

通过字段“login service”表示的不满足的依赖关系;嵌套异常为org.springframework.beans.factory.unsatisfieddependencyexception:创建名为“login service”的bean时出错:通过字段“login serviceimpl”表示的不满足依赖项;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“login serviceImpl”的bean时出错:调用init方法失败;嵌套异常为java.lang.IllegalArgumentException:方法public abstract java.util.list com.facultyproject.faculty_project.service.loginServiceImpl.FetchByLoginID(java.lang.String,java.lang.String)查询验证失败

package com.facultyProject.faculty_project.service;

import com.facultyProject.faculty_project.dao.Login;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface LoginServiceImpl extends JpaRepository<Login,Long> {


   @Query("select e FROM Login e WHERE e.login_id =(:loginId) and e.password=(:password)")
    List<Login> fetchByLoginId(@Param("loginId") String loginId, @Param("password") String password);

}

错误日志

2019-01-23 11:44:15.803错误8796--[nio-8181-exec-3]O.A.C.C.C.[.[.[/].[dispatcherServlet]:路径为[]的上下文中servlet[dispatcherServlet]的servlet.service()引发异常[请求处理失败;嵌套异常为java.lang.IllegalStateException:未找到具有根本原因的java.lang.Boolean]类的主构造函数或默认构造函数

该项目的html" target="_blank">github链接是

https://github.com/dishankgoyal/springsboot/tree/master/factual_project

共有1个答案

长孙哲
2023-03-14

错误消息指示JPA查询的语法有问题。尝试删除参数周围的括号,并确保e.login_id和e.password是实体类Login的属性名(而不是数据库列名)。

 类似资料:
  • 使用Spring Boot应用程序。我有一个类UserService,我在其中创建了一个动态查询,根据请求参数具有多个or条件: 我有UserRepository接口,我需要执行这个查询。到目前为止,我使用了findById等JPA函数或@Query(“从事件中选择id”)。 如何将此查询从服务类传递到存储库并执行它?

  • 我尝试过用Spring Boot实现JPA存储库,它工作得很好。现在,如果我尝试在使用@query注释扩展JpaRepository的接口中实现自定义查询,它可以很好地返回bean列表(使用NamedQuery)。现在,当我尝试为自定义方法/查询使用分页时,它不起作用。 代码: 控制器: 服务 异常:java.lang.IllegalArgumentException:为TypedQuery[ja

  • 问题内容: 我正在尝试从Spring指南创建一个自定义查询:根据参考4.4自定义实现,使用REST访问MongoDB数据。但是我的自定义方法在存储库的REST接口(/ user / search)中不可用。 (例如,浏览器无法找到localhost:8080 / user / search / GetByKidsAge?age = 1) 有人可以帮我解决这个问题并给我一些建议吗?非常感谢 !! 下

  • 本机查询为: 现在我有了表Hibernate实体,所以我在ApplicationRepository中尝试了 日志上说

  • 我想使用带有注释@query的Jpa存储库创建一个连接查询。 我有两张桌子: 和: 我的表实体

  • 问题内容: 我想通过注释@Query通过Jpa存储库进行Join查询。我有三个表。 本机查询是: 现在我有了Table Hibernate实体,所以我在ApplicationRepository中尝试过 日志说 意外的标记 有什么想法吗? 我的表实体 Application.java: Customer.java: User.java: 问题答案: 您不需要JPA中的ON子句,因为借助映射注释,J