Spring中如何使用Qualifier注解,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
目前成都創(chuàng)新互聯(lián)已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、溧陽網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。一 配置
二 接口
Axe
package org.crazyit.app.service;public interface Axe{ public String chop();}
Person
package org.crazyit.app.service;public interface Person{ public void useAxe();}
三 Bean
Chinese
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;@Componentpublic class Chinese implements Person{ @Autowired @Qualifier("steelAxe") private Axe axe;// // axe的setter方法// @Autowired// public void setAxe(@Qualifier("stoneAxe") Axe axe)// {// this.axe = axe;// } // 實(shí)現(xiàn)Person接口的useAxe()方法 public void useAxe() { // 調(diào)用axe的chop()方法, // 表明Person對象依賴于axe對象 System.out.println(axe.chop()); }}
SteelAxe
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.crazyit.app.service.*;@Componentpublic class SteelAxe implements Axe{ public String chop() { return "鋼斧砍柴真快"; }}
StoneAxe
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.crazyit.app.service.*;@Componentpublic class StoneAxe implements Axe{ public String chop() { return "石斧砍柴好慢"; }}
四 測試類
package lee;import org.springframework.context.*;import org.springframework.context.support.*;import org.crazyit.app.service.*;public class BeanTest{ public static void main(String[] args) { // 創(chuàng)建Spring容器 AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); // 注冊關(guān)閉鉤子 ctx.registerShutdownHook(); Person person = ctx.getBean("chinese" , Person.class); person.useAxe(); }}
五 測試結(jié)果
鋼斧砍柴真快
關(guān)于Spring中如何使用Qualifier注解問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。