阅读量:2
在Spring中,有三种常见的bean注入方式:构造器注入、setter注入和字段注入。
- 构造器注入:通过在类的构造器上使用@Autowired或者@Inject注解来实现依赖注入。当Spring容器创建bean时,会自动检查构造器参数,并将匹配的依赖注入到构造器中。例如:
@Service public class UserService { private UserRepository userRepository; @Autowired public UserService(UserRepository userRepository) { this.userRepository = userRepository; } }
- setter注入:通过在类的setter方法上使用@Autowired或者@Inject注解来实现依赖注入。Spring容器在创建bean时,会自动调用相应的setter方法,并将匹配的依赖注入到属性中。例如:
@Service public class UserService { private UserRepository userRepository; @Autowired public void setUserRepository(UserRepository userRepository) { this.userRepository = userRepository; } }
- 字段注入:通过在类的字段上使用@Autowired或者@Inject注解来实现依赖注入。Spring容器在创建bean时,会自动将匹配的依赖注入到字段中。例如:
@Service public class UserService { @Autowired private UserRepository userRepository; }
除了上述常见的注入方式,还可以使用JSR-330规范中的@Inject注解,或者使用Spring的@Qualifier注解来指定具体的依赖注入。另外,还可以使用@Bean注解在Java配置类中定义bean,并将其注入到其他bean中。