Spring原始碼解析之 資源載入(1)

2021-06-17 21:55:59 字數 759 閱讀 4890

關於資源載入。spring抽像了兩個介面。分別是

resource 和resourceloader,作用分別是

resource:所有資源的抽像和訪問介面

resourceloader:是用於定位和查詢resource的資源。配合resource來使用

通過resource 介面來擴充套件不同型別的資源查詢類,比如spring例項的

bytearrayresource

classpathresource

filesystemresource 

等常用資源,想獲得指定的resource,只需要用指定的工廠建立即可

例:beanfactory beanfactory = new xmlbeanfactory(new classpathresource("..."));

classpathresource是指導位於classpath裡面的資源

resourceloader有乙個預設的實現defaultresourceloader。你可以理解為他是乙個載入資源的模板方法。他抽像了

載入資源的一些前置動作,然後不同的資源載入類繼承了defaultresourceloader來做為資源載入的具體,如常用的

filesystemresource

都重寫了defaultresourceloader類的getresourcebypath方法。

見類結構圖

Spring原始碼解析之 Aop原始碼解析(2)

spring aop 更多的是oop開發模式的乙個補充,幫助oop以更好的方式來解決對於需要解決業務功能模組之上統一管理 的功能 以一副圖來做為aop功能的說明更直觀些。對於類似系統的安全檢查,系統日誌,事務管理等相關功能,物件導向的開發方法並沒有更好的解決方法 aop引入了一些概念。更多的是spr...

Spring原始碼之XML解析

資料準備階段 準備的目的是封裝 resource引數,目的是為了考慮到 resource可能存在編碼要求的情況,其次,通過 sax讀取 xml檔案的方式來準備 inputsource物件,最後將引數傳遞到 最核心的實現部分 doloadbeandefinitions inputsource,enco...

Spring 原始碼解析之BeanFactory介面

beanfactory介面是spring 容器的根介面,其他介面和類通過對這個介面的實現物件的例項化,通過對該介面的控制,實現對目標物件的例項化。string factory bean prefix 用於取消對beanfactory例項的引用區分factory和其實例,如果是 返回factory,否...