我一直在与 DI 作斗争,@Autowired在运行时面临。请参阅我在编译时没有遇到任何问题。我添加了 4.2.4 版本的弹簧豆、弹簧上下文、弹簧核心罐子。相同的代码适用于 Spring 3,而不适用于 Spring 4。任何建议都非常感谢。配置检查或 maven 依赖项等建议也会有所帮助。
下面的示例代码
@Component
@Qualifier(Names.NAME2_1)
public class ClassA implements InterfaceA {
@Autowired
@Qualifier(Names.NAME2)
private InterfaceB<Entity> variable1;
Spring官方文档说,最好通过setter进行注射。
// Fields
//
private UserRepository userRepository;
private PasswordEncoder passwordEncoder;
// Injects are here
//
@Autowired
public void setUserRepository(UserRepository userRepository) {
this.userRepository = userRepository;
}
@Autowired
public void setPasswordEncoder(PasswordEncoder passwordEncoder) {
this.passwordEncoder = passwordEncoder;
}
不要忘记从 https://mvnrepository.com/添加最新的依赖项