从 Spring 3.1.9 迁移到 Spring 4.2.4 时@Autowired不起作用.但是适用于Spring



我一直在与 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/添加最新的依赖项

最新更新