- 資訊首頁(yè) > 開(kāi)發(fā)技術(shù) > 編程語(yǔ)言 >
- SpringIOC框架的簡(jiǎn)單實(shí)現步驟
依賴(lài)注入( Dependency Injection ,簡(jiǎn)稱(chēng) DI) 與控制反轉 (IoC) 的含義相同,只不過(guò)這兩個(gè)稱(chēng)呼是從兩個(gè)角度描述的同一個(gè)概念,具體如下:
依賴(lài)注入可以有效的解耦合。
有兩種實(shí)現的方法,一種是配置xml文件來(lái)實(shí)現,另一種是通過(guò)參數實(shí)現,來(lái),找個(gè)簡(jiǎn)單的例子讓咱們上手試一試。(Intellij IDEA 2020)
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.5</version> </dependency>
public interface Pet { void say(); }
public class Person { private String name; private Pet pet; public void setName(String name) { this.name = name; } public void setPet(Pet pet) { this.pet = pet; } public void keepPet() { System.out.println(name + " 比" + pet + " 可愛(ài),因為它會(huì )說(shuō)"); pet.say(); } }
public class Dog implements Pet{ private String name; public void setName(String name) { this.name = name; } @Override public String toString() { return name; } public void say(){ System.out.println("WangWang"); } }
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="dog" class="Ex_04.Dog"> <property name="name" value="哈士奇"></property> </bean> <bean id="person" class="Ex_04.Person"> <property name="name" value="拉布拉多"></property> <property name="pet" ref="dog"></property> </bean> </beans>
基本類(lèi)已創(chuàng )建完畢,讓我們來(lái)創(chuàng )建一個(gè)實(shí)現類(lèi)
輸出結果為:拉布拉多 比哈士奇 可愛(ài),因為它會(huì )說(shuō)WangWang
以上就就是以xml文件實(shí)現SpringIOC框架,如有錯誤,麻煩指出,感謝耐心到現在的朋友
到此這篇關(guān)于SpringIOC框架簡(jiǎn)單實(shí)現步驟的文章就介紹到這了,更多相關(guān)SpringIOC框架簡(jiǎn)單實(shí)現內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站