@Primary用法
时间: 2023-12-30 16:23:18 浏览: 119
@Primary是Spring框架中的一个注解,用于解决依赖注入时的歧义性问题。当一个接口有多个实现类时,使用@Primary注解可以指定其中一个实现类作为首选的注入对象。
下面是一个示例,演示了@Primary注解的用法:
1. 首先,在实现类上添加@Primary注解进行声明:
```java
@Primary
@Component
public class StudentHan implements Person{
@Override
public void study(String subject) {
System.out.println("I'm Han Meimei. I'm learning "+subject);
}
}
```
2. 然后,在需要注入的地方使用@Autowired注解进行注入:
```java
@Controller
@RequestMapping(value = "/primary")
public class TestPrimary {
@Autowired
private Person person;
@RequestMapping(value = "test", method = RequestMethod.GET)
@ResponseBody
public void Test(){
person.study("Chinese");
}
}
```
在上述示例中,通过在StudentHan类上添加@Primary注解,将其声明为首选的注入对象。当需要注入Person接口时,Spring框架会自动选择StudentHan作为注入对象。
阅读全文