這篇文章主要介紹了spring的依賴(lài)注入有哪些方式,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
spring注入的三種方式是:1、構(gòu)造器注入;2、setter注入;3、接口注入。構(gòu)造器注入依賴(lài)于構(gòu)造方法的實(shí)現(xiàn),setter注入是通過(guò)setter方法注入。
spring的依賴(lài)注入分為三種方式,如下:
1、構(gòu)造器注入
2、setter注入
3、接口注入
構(gòu)造器注入和setter注入是依賴(lài)注入的兩種主要方式,接口注入是指從別的地方注入的方式。(通過(guò)在xml中描述,實(shí)現(xiàn)注入)
(學(xué)習(xí)視頻推薦:java視頻教程)
一、構(gòu)造器注入
構(gòu)造器注入依賴(lài)于構(gòu)造方法的實(shí)現(xiàn),----------構(gòu)造方法可以是有參數(shù)的,也可以是無(wú)參數(shù)的 。
在沒(méi)有spring之前,我們?cè)诖蠖鄶?shù)情況下,我們都是通過(guò)構(gòu)造方法來(lái)創(chuàng)建類(lèi)對(duì)象。Spring可以采用反射的方式,通過(guò)構(gòu)造方法來(lái)完成注入,這就是構(gòu)造方法的原理。
1、引入spring的支持
2、通過(guò)描述具體的類(lèi),構(gòu)造方法和其中的參數(shù),這樣spring就可以通過(guò)相應(yīng)的信息用反射的方式創(chuàng)建對(duì)象。
3、在test文件中加載spring配置文件的方法
String configLocation ="applicationContext.xml"; ApplicationContext context = new ClassPathXmlApplicationContext(configLocation); Role role = context.getBean("role", Role.class);
在spring中一切的資源都是bean。
二、spring中最主流的注入方式:setter注入
setter注入利用JAVA Bean規(guī)范所定
注意:
構(gòu)造器注入是通過(guò)構(gòu)造方法注入,
setter注入是通過(guò)setter方法注入
首先將構(gòu)造方法設(shè)置為無(wú)參的構(gòu)造方法,然后利用setter注入為其設(shè)置新的值,這也是通過(guò)java的反射技術(shù)得以實(shí)現(xiàn)的。
注意:構(gòu)造器注入和setter注入都是通過(guò)java的反射技術(shù)得以實(shí)現(xiàn)的。
1 <!-- 下面是setter注入,需要一個(gè)無(wú)參的構(gòu)造方法 --> 2 <bean id="role1" class="com.pojo.Role" > 3 <property name="id" value="124"></property> 4 <property name="name" value="張三"></property> 5 <property name="age" value="2324"></property> 6 </bean>
三、spring依賴(lài)注入的第三種方式:接口注入
有時(shí)候資源并非來(lái)自于自身的系統(tǒng),而是來(lái)自于外界,比如說(shuō)數(shù)據(jù)庫(kù)連接資源完全可以在Tomcat下配置,然后通過(guò)JNDI的方式去獲取它,這樣的數(shù)據(jù)庫(kù)連接資源就屬于開(kāi)發(fā)工程外的資源。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享spring的依賴(lài)注入有哪些方式內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問(wèn)題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!
網(wǎng)站題目:spring的依賴(lài)注入有哪些方式-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://chinadenli.net/article46/dgjgeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、外貿(mào)建站、品牌網(wǎng)站建設(shè)、虛擬主機(jī)、用戶(hù)體驗(yàn)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容