spring bean 依赖注入标签 构造器注入

tech2022-08-16  145

you can add @ComponentScan without any arguments. All of your application components ( @Component, @Service, @Repository, @Controller etc.) are automatically registered as Spring Beans

 

The following example shows a @Service Bean that uses constructor injection to obtain a required RiskAssessor bean:

package com.example.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class DatabaseAccountService implements AccountService {     private final RiskAssessor riskAssessor;     @Autowired      public DatabaseAccountService(RiskAssessor riskAssessor) {        this.riskAssessor = riskAssessor;    }     // ... }

If a bean has one constructor, you can omit 省略 the @Autowired, as shown in the following example:

只要我们只提供了一个构造函数,并且构造函数所需要的参数都在Spring容器中,那么不需要进行精确的指定使用@Autowired

@Service public class DatabaseAccountService implements AccountService {     private final RiskAssessor riskAssessor;     public DatabaseAccountService(RiskAssessor riskAssessor) {          this.riskAssessor = riskAssessor;    }     // ... }

 

最新回复(0)