【问题标题】:Spring Boot Project throwing "At least 1 bean exception"Spring Boot 项目抛出“至少 1 个 bean 异常”
【发布时间】:2019-05-21 08:19:15
【问题描述】:

我无法运行我的项目。反复获取 NoBeanFoundException。例外情况是:没有可用的“com.example.Model.Movie”类型的合格 bean:预计至少有 1 个有资格作为自动装配候选者的 bean。依赖注解:{@org.springframework.beans.factory.annotation.Autowired(required=true)} repo 的链接是https://github.com/RaviShekhawat/BMSBackend

【问题讨论】:

  • @Simon.S.A.谢天谢地,一些高尚的人一路导入我的项目并指出错误。

标签: java spring spring-boot spring-data-jpa


【解决方案1】:

您的 Movie 类不是 spring bean,因此您无法将其 @Autowire 到 MovieController。

由于您的 Movie 是 @Entity,因此将其作为 spring bean 是没有意义的。 Spring bean 通常是没有状态的单例,并且在应用程序的整个生命周期中都存在。你的电影确实有状态,我认为应该只为个别请求而徘徊。

我不确定您要对 MovieController 中的 Movie movie 字段做什么。但是你真的不想把它当作一个字段。控制器中的大多数方法都按照我的预期工作,它们从数据库中检索数据并将其返回给调用者,或者从调用者获取数据并将其传递给数据库。

第一种方法……

    @Autowired
    Movie movie;

    @RequestMapping(value="/GetReactions", method= RequestMethod.GET)
    public Integer getReactions() {

       return movie.getNo_of_reviews();

    }

看起来您正试图在调用之间在控制器中保存一些状态。不要这样做。

【讨论】:

    猜你喜欢
    • 2016-09-13
    • 2016-09-26
    • 2019-09-19
    • 2020-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-24
    • 2018-12-30
    相关资源
    最近更新 更多