spring boot setter方法注入
时间: 2023-07-28 17:09:55 浏览: 42
在Spring Boot中,可以使用setter方法注入来注入依赖项。具体步骤如下:
1. 在需要注入依赖项的类中定义一个私有的依赖项变量,并生成对应的setter方法。
```java
@Service
public class MyService {
private MyDependency myDependency;
public void setMyDependency(MyDependency myDependency) {
this.myDependency = myDependency;
}
}
```
2. 在配置类中使用@Bean注解创建依赖项的实例,并通过调用setter方法将依赖项注入到需要的类中。
```java
@Configuration
public class MyConfig {
@Bean
public MyDependency myDependency() {
return new MyDependency();
}
@Bean
public MyService myService() {
MyService myService = new MyService();
myService.setMyDependency(myDependency());
return myService;
}
}
```
3. 如果需要注入多个依赖项,只需要在目标类中定义多个私有变量和对应的setter方法,然后在配置类中使用多个@Bean注解创建依赖项的实例并注入即可。
```java
@Service
public class MyService {
private MyDependency1 myDependency1;
private MyDependency2 myDependency2;
public void setMyDependency1(MyDependency1 myDependency1) {
this.myDependency1 = myDependency1;
}
public void setMyDependency2(MyDependency2 myDependency2) {
this.myDependency2 = myDependency2;
}
}
@Configuration
public class MyConfig {
@Bean
public MyDependency1 myDependency1() {
return new MyDependency1();
}
@Bean
public MyDependency2 myDependency2() {
return new MyDependency2();
}
@Bean
public MyService myService() {
MyService myService = new MyService();
myService.setMyDependency1(myDependency1());
myService.setMyDependency2(myDependency2());
return myService;
}
}
```