zoukankan      html  css  js  c++  java
  • 使用 @Qualifier 注释和 @Autowired 注释通过指定哪一个真正的 bean 将会被装配来消除混乱

    1、当你创建多个具有相同类型的 bean 时,并且想要用一个属性只为它们其中的某一个进行装配,在这种情况下,你可以使用 @Qualifier 注释和 @Autowired 注释来精确配置。

    2、示例

    java

    public class Student {
       private Integer age;
       private String name;
       public void setAge(Integer age) {
          this.age = age;
       }   
       public Integer getAge() {
          return age;
       }
       public void setName(String name) {
          this.name = name;
       }  
       public String getName() {
          return name;
       }
    }
    public class Profile {
       @Autowired
       @Qualifier("student1")
       private Student student;
       public Profile(){
          System.out.println("Inside Profile constructor." );
       }
       public void printAge() {
          System.out.println("Age : " + student.getAge() );
       }
       public void printName() {
          System.out.println("Name : " + student.getName() );
       }
    }
    public class MainApp {
       public static void main(String[] args) {
          ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml");
          Profile profile = (Profile) context.getBean("profile");
          profile.printAge();
          profile.printName();
       }
    }

    Beans.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans>
       <context:annotation-config/>
    <bean id="profile" class="com.tutorialspoint.Profile"></bean>
    <bean id="student1" class="com.tutorialspoint.Student"> <property name="name" value="Zara" /> <property name="age" value="11"/> </bean>

    <bean id="student2" class="com.tutorialspoint.Student"> <property name="name" value="Nuha" /> <property name="age" value="2"/> </bean>
    </beans>

    打印输出

    Inside Profile constructor.
    Age : 11
    Name : Zara
    

      

  • 相关阅读:
    jenkins+maven+svn的自动化部署
    python+selenium遇到鼠标悬停不成功可以使用js进行操作
    robot framework环境搭建
    selenium+python定位元素方法
    selenium+python元素操作
    selenium+python等待时间
    selenium+python浏览器窗口的切换
    jmeter学习(七)连接mysql 数据库
    jmeter学习(六)集合点和关联
    jmeter学习(五)参数化
  • 原文地址:https://www.cnblogs.com/wangdapeng/p/5053585.html
Copyright © 2011-2022 走看看