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

单击带红色下划线的@Query,JpaRepository

殷浩慨
2023-03-14

还有一点。如何创建这样一个复杂的查询?

SELECT businesscentr.email
FROM businesscentr, banners, businessbanner, click
WHERE click.id_banner = banners.id_banner AND banners.id_banner =  businessbanner.id_banner AND businessbanner.id_bc = businesscentr.id_bc

存储库扩展了JpaRepository

@Query("select c from Click c where c.id_bannners = :idbanners and c.fullname_client = :fullnameClient")

String sent(@Param("fullname_client") String fullnameClient, @Param("id_banner") long idbanners);

错误

 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clickController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.qoobico.remindme.server.service.ClickService com.qoobico.remindme.server.controller.ClickController.service; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clickServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.qoobico.remindme.server.repository.ClickRepository com.qoobico.remindme.server.service.ClickServiceImpl.clickRepository; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clickRepository': Invocation of init method failed; nested exception is java.lang.IllegalStateException: Using named parameters for method public abstract java.lang.String com.qoobico.remindme.server.repository.ClickRepository.sent(java.lang.String,long) but parameter 'fullname_client' not found in annotated query 'select c from Click c where c.id_bannners = :idbanners and c.fullname_client = :fullnameClient'!
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:305)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:301)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
    at 

共有1个答案

陆敏学
2023-03-14

问题是,参数名与查询参数名不匹配

你有的

  @Query("select c from Click c where c.id_bannners = :idbanners and c.fullname_client = :fullnameClient")
    String sent(@Param("fullname_client") String fullnameClient, @Param("id_banner") long idbanners);

你应该有的

 @Query("select c from Click c where c.id_bannners = :id_banner and c.fullname_client = :fullname_client")
    String sent(@Param("fullname_client") String fullnameClient, @Param("id_banner") long idbanners);

这就是参数和查询如何相互匹配

 类似资料:
  • 我第一次尝试使用龙目岛,因为我在一个类中有很多变量,并且不想为所有变量生成 getter 和 setter。 我正在使用IntelliJ 2016.2.1和Lombok插件0.13.14,我的源代码在Java 8中。我已经启用了注释预处理或其他功能,并将lombok.jar添加到我的库中。我编译了我的项目,它编译得很好,使用了@Getter和@Setter方法。 然而,我唯一的问题是我实际上没有在

  • 问题内容: 我正在尝试使JLabel带有下划线。我到处搜寻,但一无所获。即使在属性中,也没有为JLabel下划线的选项。我能做什么? 问题答案: 要么

  • 问题内容: 我在这里有此代码: 首先,如您所见,它带有下划线()。其次,所有文字均为红色。那么,是否有将文本($ username)留为红色而下划线为黑的情况? 问题答案: 不能。您最好的方法是使用其他颜色的,但这并不是 真正的重点 。

  • 问题内容: 如何在CSS3中从左到右创建 下划线动画? 问题答案: 这是一个非常棘手的问题。 唯一的解决办法我能想出是过渡的或我其实应该说我过渡,并让出现,并在同一时间保持,在这种情况下,链接对齐。 很难解释,所以我举了一个简短的例子,它并不完美,看起来有些混乱,但至少可以说明我的意思。:-) HTML 的CSS

  • >>> class MyClass(): ... def __init__(self): ... self.__superprivate = "Hello" ... self._semiprivate = ", world!" ... >>> mc = MyClass() >>> print mc.__superprivate Traceback (most recen

  • 默认是某种蓝色(可能是全息蓝色),但我需要将其更改为橙色。问题是,我不知道这到底是怎么叫的(这是下划线,指示器还是什么?),所以我不能自己谷歌这个。 谢谢