组件需要找不到名为“ userService”的bean

时间:2018-06-26 10:51:01

标签: java spring spring-boot

我对SpringBoot的实现有如下疑问。

我收到以下错误消息: 说明:

一个组件需要一个找不到名为'userService'的bean。

操作:

考虑在您的配置中定义一个名为“ userService”的bean。

3 个答案:

答案 0 :(得分:1)

您可以使用@Component批注定义bean,只需在UserService类上添加@Component批注。这样会将UserService初始化为配置中的Bean。

答案 1 :(得分:0)

我通常在您的服务上使用@Service批注,然后Spring Boot将其选中,并且您应该能够在另一个类/控制器中使用@Autowire。您还可以通过使用@Bean并返回服务实例来创建Bean。

答案 2 :(得分:0)

错误:“一个组件需要找不到名为'xyzService'的bean。

解决方案:您的项目的每个类肯定会有不同的软件包,因此您需要确保在spring boot主类的软件包的组件扫描中进行配置:

单包

@ComponentScan("org.stackoverflow.springboot")
@SpringBootApplication
@PropertySource(value={"classpath:conf.properties"})
public class MoviemaxApplication implements CommandLineRunner {

多个软件包:

@ComponentScan({"org.stackoverflow.springboot","org.stackoverflow.spring"})
@SpringBootApplication
public class SpringbootIn10StepsApplication {