autowire加载指定实现类_一个接口多个实现类,controller层如何指定特定实现类进行调用?...
时间: 2023-12-30 16:04:58 浏览: 73
java代码-使用java,解决一个接口多个实现类如何注入的源代码
在 Spring 中,如果一个接口有多个实现类,可以使用 `@Qualifier` 注解来指定要注入的实现类。在 controller 层中也可以使用 `@Qualifier` 注解来指定要使用的实现类。
首先,在接口的多个实现类中使用 `@Qualifier` 注解来指定每个实现类的名称,如下所示:
```java
@Service
@Qualifier("impl1")
public class MyServiceImpl1 implements MyService {
// ...
}
@Service
@Qualifier("impl2")
public class MyServiceImpl2 implements MyService {
// ...
}
```
然后在 controller 层中使用 `@Autowired` 和 `@Qualifier` 注解来指定要使用的实现类,如下所示:
```java
@RestController
public class MyController {
@Autowired
@Qualifier("impl1")
private MyService myService;
// ...
}
```
这样就可以指定要使用的实现类进行调用了。
阅读全文