Spring的核心机制依赖注入,Junit测试与Java基础Getter和Setter两种方法意义——2017.07.26...
今天對Spring的基礎理解又加深了一丟丟。
? ? ? ? ? ? ? 1 首先Spring的基礎配置文件中,主要由以下幾個配置文件,
1 <beans xmlns:xsi="http://w3.org/2001/XMLSchema-instance" 2 xmlns="http://www.springframework.org/schema/beans" 3 xsi:schemaLocation="http://www.springframework.org/schema/beans 4 http://www.springframework.org/schema/beans/spring-beans-4.0.xsd>? ? ? ? ? ? ?
beans文件的根節點
? ? ? ? ? ? ? xmlns:xsi ——是指xml文件遵守xml規范 ? xml ?schema ?instance
? ? ? ? ? ? ???xmlns的意思是 XML namespace
? ? ? ? ? ? ? ?xsi:schemationLocation:是指具體用到的schema資源.
2 Spring中的核心機制是依賴注入,那么談依賴注入,必首先需要知道什么是依賴注入,A調用B,表明的是A與B之間有依賴關系,注入是表示在使用時注入B的實列。
? ? ? ? ? ? ?那么為什么會用這些呢?
? ? ? ? ? ? 我們首先需要回憶下,對于對象A與對象B,A要調用對象B,有那幾種實現方式、
? ? ? ? ? ? ? (1) 通過 new 構造器
? ? ? ? ? ? ? (2) 通過工廠模式
? ? ? ? ? ? ? (3) 通過Spring方式
new方式最簡單粗暴,如果調用對象很多,代碼直接耦合度會非常高。第二個就會稍微簡單一些,簡單理解就是工廠把B搞好,我們找工廠就行。第三種方式就是在工廠的模式上進一步簡單,把B造好,B主動送上來。
第三種方式中,通常通過IOC容器來控制B送上門來。這就回到我們的主題,如何依賴注入,依賴注入通常有兩種方式。
? ? ? ? ? ?設值注入:IOC容器通過成員變量的setter方法來注入被依賴對象。那么問題來了,Spring通過什么知道實例之間的依賴關系呢。答案是XML配置文件,即是XML Schema來定義配置文件約束
<bean id="chinese" class="org.crazy.app.service.impl.chinese"><property name ="axe" ref="stoneAxe"/> </bean>? ? ? ?id是該Bean的唯一標識,程序通過id屬性來訪問該Bean實列
? ? ? ?class:指定該Bean的實現類,注意此處不能用接口,必須是實現類。
? ? ? ? 其中如果<property name="" ?ref="">
Spring框架中只要出現<property.../>子元素,會立馬執行Setter方法。
簡單的來概況一下設值注入就是通過setter方法位目標注入依賴關系。
?
構造注入:在構造實例時已經完成了依賴關系的初始化化,這種利用構造器來設值依賴關系的方式,稱為構造注入。通俗來說,就是驅動Spring在底層以反射方式執行帶指定參數的構造器,當執行帶參數的構造器時,就可以利用構造器參數對成員變量執行初始化。
? ? ? ? ? ?此時出現問題,Spring默認是無參數的構造器來創建對象。
?
?
2 ?Getter和Setter方法的好處
? 首先Getter和Setter兩個方法是什么?這兩個方法其實是讀與寫兩個操作,getter是外部讀取操作,函數必須有返回值,且函數名是內部變量名,對成員變量進行取值操作。setter是內部寫入操作,對成員變量進行賦值,相當于寫入操作。
二者的好處:1 我的感觸是提供了代碼的封裝,外部不會輕易改變內部代碼的值。(別人概括的經典話是:內部儲存與外部表現不同) ? 2 在對外部接口不變的情況下,修改內部儲存方式和邏輯 ?3 可以有不同的訪問級別
?
3Junit 測試
Junit測試是什么?怎么用?
? ? ? ? ? Junit是一個Java語言單元測試框架,有點類似于白盒測試,此時程序員清楚知道程序的內部邏輯結構,程序員知道完成什么樣的邏輯功能與完成后會怎么樣?
? ? ? ? ? ? ?怎么用?需要導入Junit包,結合項目進一步使用。(明天繼續補充)
??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
轉載于:https://www.cnblogs.com/linjingjia/p/7242399.html
總結
以上是生活随笔為你收集整理的Spring的核心机制依赖注入,Junit测试与Java基础Getter和Setter两种方法意义——2017.07.26...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ace Admin 使用教程
- 下一篇: Java学习笔记之:Java引用数据类型