现在我有一个继承项目,它使用基于注释的spring依赖注入。因此,所有类都只使用@Component(或特定的stereoTypes,如@service,@ Repository,@ RestController等)进行标记。这使得有点难以找到依赖项所在的位置,我想改变它,以便每个包都有自己的依赖配置,然后将每个包添加到@ComponentScan。
例如,如果我有一个名为com.mycoolpackage.login和mycoolpackage.networking的软件包 然后我在第一个包中有这样的Spring配置:
@Configuration
public class LoginDIConfig {
@Bean
public LoginServiceImpl loginServiceImpl() {
return new LoginServiceImpl();
}
}
在第二个包中我有以下内容:
@Configuration
public class NetworkDIConfig {
@Bean
public NetworkServiceImpl networkServiceImpl() {
return new NetworkServiceImpl();
}
}
我的@ ComponentScan看起来像这样:
@ComponentScan(basePackages = {"com.mycoolpackage.login","com.mycoolpackage.network"})
所以我对这种方法有两个问题。
答案 0 :(得分:1)
如果你想手动配置一些属性,那么你应该进行上述配置,否则你应该坚持退出。
This makes it a little hard to find where the dependency is located
@Autowire或@Inject注释将始终引导您进入依赖类。