中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣寫一個spring IOC容器

發布時間:2021-12-02 15:46:13 來源:億速云 閱讀:160 作者:柒染 欄目:云計算

今天就跟大家聊聊有關怎樣寫一個spring IOC容器,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

spring框架的基礎核心和起點毫無疑問就是IOC,IOC作為spring容器提供的核心技術,成功完成了依賴的反轉:從主類的對依賴的主動管理反轉為了spring容器對依賴的全局控制。今天就帶大家手寫一個spring IOC容器。

第0步(準備工作):

(1)JDK1.8及java環境變量
(2)maven包及maven環境變量
(3)idea

第1步(創建項目,引入tomcat包)

PS:由于該項目的作用是模擬spring的部分功能,所以取名為spring

(1)創建好的項目內容如下圖:

怎樣寫一個spring IOC容器

(2)pom文件的初始狀態如下:

怎樣寫一個spring IOC容器

第2步:搭建主體框架

PS:一個正常的spring項目一般分為controller和service部分,此處暫時忽略數據庫鏈接

怎樣寫一個spring IOC容器

(1)其中,TestController實現功能,返回name+“Hello World!”,引用TestService

怎樣寫一個spring IOC容器

(2)而TestService和TestServiceImpl則分別實現功能

怎樣寫一個spring IOC容器

第3步:創建,并打上標簽

PS:我們需要很多標簽,如service,controller,還有autowired等

(1)創建各種標簽(暫時創建這些標簽,后面不夠再加)

怎樣寫一個spring IOC容器

(2)打上標簽

怎樣寫一個spring IOC容器

怎樣寫一個spring IOC容器

由于RequestMpping后面需要跟路徑,所以此處需要重寫其value()方法,如下:

怎樣寫一個spring IOC容器

第4步:進入正題,創建一個DisPatcherServlet類,用于實現IOC容器功能

(1)DisPatcherServlet繼承HttpServlet(注意添加依賴),并重寫doGet,doPost方法

怎樣寫一個spring IOC容器

(2)創建一個doDispatcher方法,并被doPost引用

怎樣寫一個spring IOC容器

第5步:初始化

(1)暫停實現doDispatcher,去重寫初始化方法init,初始化共分為五大步驟,如下

怎樣寫一個spring IOC容器

注意:頂端要加上屬性類(Properties),且要resource中加application.properties,并加上scanPackage屬性,內容為需掃描的根目錄

怎樣寫一個spring IOC容器

(2)加載配置文件實現,需要先配置一個web.xml,路徑和內容如下:

路徑:

怎樣寫一個spring IOC容器

內容:

怎樣寫一個spring IOC容器

剩下的內容,大家應該能看懂的吧

怎樣寫一個spring IOC容器

(3)下一步,使用遞歸,將所有class的路徑存入一個集合(classPaths)里面

怎樣寫一個spring IOC容器

(4)下一步,將打上了controller和service標簽的類放入ioc容器中

怎樣寫一個spring IOC容器

(5)下一步,注入(通過Autowired標簽從IOC容器中獲取實例對象并賦值)

怎樣寫一個spring IOC容器

(6)獲取所有的RequestMapping內容,并寫到一個對象集合中

第6步:回頭實現doDisPatcher的步驟

怎樣寫一個spring IOC容器

(1)首先,設定404(class notfound)
(2)后面一半,實現接口功能
PS1:判斷url方法
PS2:根據url獲取方法
PS3:獲取方法下的所有參數

最后一步:執行tomcat

so,

(1)你以為以上的內容是對的嘛?
(2)你以為你能得到想要的結果嗎?

太天真了!!!

如果你按照我說的方法去運行,恭喜你,得到的結果是not found!!!真正的挑戰才剛剛開始:

第一,標簽類的定義,如下,特別重要的是Target

怎樣寫一個spring IOC容器

還需要補充一個mapping

怎樣寫一個spring IOC容器

第二,TestController類中,RequestParam少了value屬性,如果沒有,則無法傳值。

怎樣寫一個spring IOC容器

第三,那么參數初始化,是不是也有一點問題呢?注意這段代碼,傳參的名字應該和什么相關?

怎樣寫一個spring IOC容器

好了 現在真的可以成功了~~~

怎樣寫一個spring IOC容器

看看結果吧。

怎樣寫一個spring IOC容器

看完上述內容,你們對怎樣寫一個spring IOC容器有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台江县| 潼关县| 乌苏市| 枝江市| 霸州市| 淮北市| 剑阁县| 姜堰市| 奉化市| 孟村| 新干县| 珲春市| 嫩江县| 左云县| 清新县| 科尔| 萝北县| 临清市| 清水县| 朔州市| 天等县| 错那县| 横山县| 肃北| 陈巴尔虎旗| 汽车| 苏尼特右旗| 绥阳县| 广州市| 瑞金市| 海安县| 广平县| 大港区| 德钦县| 双流县| 枝江市| 梅河口市| 彩票| 湖南省| 三门县| 墨脱县|