Spring原始碼學習之BeanFactory介面簡述
BeanFactory介面中定義如下:
BeanFactory.class介面中定義的只是一下介面,通過實現這一系列介面,可以使用不同的bean的檢索方法(獲取不同的bean),很方便的從ioc容器中獲取需要的bean,從而忽略ioc的具體實現。
下面大致介紹一下這幾個介面的作用:
1.通過介面方法containsBean讓使用者能夠判斷容器是否含有指定名字的Bean;
2.通過介面方法isSingleton來査詢指定名字的Bean是否是Singleton型別的;
3.通過介面方法isPrototype來査詢指定名字的Bean是否是prototype型別的;
4.通過介面方法isTypeMatch來査詢指定了名字的Bean的Class型別是否是特定的Class類
型,這個Class型別可以由使用者來指定。
5.通過介面方法getType來獲取指定名字的Bean的Class型別。
6.通過介面方法getAliases來査詢指定了名字的Bean的所有別名,這些別名都是使用者在
BeanDefinition中定義的。
相關推薦
Spring原始碼學習之BeanFactory介面簡述
BeanFactory介面中定義如下: BeanFactory.class介面中定義的只是一下介面,通過實現這一系列介面,可以使用不同的bean的檢索方法(獲取不同的bean),很方便的從ioc容器中獲取需要的bean,從而忽略ioc的具體實現。 下面大致介紹一下這幾個介
Spring原始碼學習之BeanFactory體系結構
public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates no externally defined autowiring. Note that
Spring原始碼學習之BeanFactory和FactoryBean
今天在學習Spring原始碼的時候,發現了spring中不僅僅有BeanFactory,還有FactoryBean,突然覺得分不清這兩者之間有什麼不同,難道僅僅是名字嗎?但是從名字上我們也能看出一些端
spring原始碼學習之路---IOC容器初始化要義之bean定義載入(四)
上章說到要帶各位去看看bean定義載入的要義,其實就是loadBeanDefinitions這個方法的具體實現步驟,下面我們跟隨這個方法去看下它到底是如何載入bean定義的。 上面是我擷取的實現了loadBeanDefinitions的類級別截圖,loadBeanDefinit
spring原始碼學習之路---深度分析IOC容器初始化過程(三)
分析FileSystemXmlApplicationContext的建構函式,到底都做了什麼,導致IOC容器初始化成功。 public FileSystemXmlApplicationContext(String[] configLocations, boolean ref
spring原始碼學習之路---IOC實現原理(二)
上一章我們已經初步認識了BeanFactory和BeanDefinition,一個是IOC的核心工廠介面,一個是IOC的bean定義介面,上章提到說我們無法讓BeanFactory持有一個Map package org.springframework.beans.factory.supp
spring原始碼學習之路---IOC初探(一)
首先把spring原始碼匯入,怎麼匯入百度下。 首先我們來說一下IOC,IOC是spring最核心的理念,包括AOP也要屈居第二,那麼IOC到底是什麼呢,四個字,控制反轉。 網上有不少是這麼解釋IOC的,說IOC是將物件的建立和依賴關係交給容器,這句話我相信不少人都知道,在我個人的理解
spring原始碼解讀:BeanFactory介面
不知道為什麼看著Spring的原始碼,感觸最深的是Spring對概念的抽象,所以我就先學介面了,BeanFactory是Spring IOC實現的基礎,這邊定義了一系列的介面,我們通過這些介面的學習,可以大致瞭解BeanFactory體系各介面如何分工合作。 為學習具體實現
Spring原始碼學習之容器的功能擴充套件
我們都站在巨人的肩膀上 宣告:參考《Spring原始碼深度解析》 ApplicationContext和BeanFactory區別: Application提供了更多的擴充套件功能,簡單來說,就是:Application包含了BeanFactory的所
SPRING原始碼學習之路(一)
結合《Spring技術內幕:深入解析SPRING架構與設計原理》這本書開啟Spring學習之路。 ps:之前其實已經看過一部分了,但是也就是看過,一看而過了。o(╯□╰)o 結合FileSystemXmlApplicationContext來分析 具體實現如下: /
Spring原始碼學習之IOC實現原理(二)-ApplicationContext
一.Spring核心元件結構 總的來說Spring共有三個核心元件,分別為Core,Context,Bean.三大核心元件的協同工作主要表現在 :Bean是包裝我們應用程式自定義物件Object的,Object中存有資料,而Context就是為了這些資料存放提供一個生存環境,儲存各個 bean之間的
Spring原始碼學習之IOC容器實現原理(一)-DefaultListableBeanFactory
從這個繼承體系結構圖來看,我們可以發現DefaultListableBeanFactory是第一個非抽象類,非介面類。實際IOC容器。所以這篇部落格以DefaultListableBeanFactoryIOC容器為基準進行IOC原理解析。 一.兩個重要介面 前面已經分析了BeanFactor,它的三個直接子
Spring原始碼學習之AOP
我們都站在巨人的肩膀上 宣告:參考《spring原始碼深度解析》 1.Spring AOP主要採用動態代理實現,而動態代理分為兩種: JDK動態代理:其代理物件必須是某個介面的實現,它是通過在執行時期建立一個介面的實現類來完成對目標物件的代理。 CG
Spring原始碼學習之路---深入AOP(終)
原文地址:https://blog.csdn.net/zuoxiaolong8810/article/details/8962353 上一章和各位一起看了一下springAOP的工作流程,當我們給出AOP相關的配置以後,直接從IOC容器中拿出來的就是已經加強過的bean
SPRING原始碼學習之路(二)
上一篇,已經對IOC容器的初始化過程有個大體認識,接著看IOC容器的依賴注入。 依賴注入的觸發是在使用者第一次向容器索要Bean時才觸發,當然也可以設定lazy-init讓容器提前完成Bean的預例項化,預例項化是在初始化過程中完成 我
Spring原始碼學習之路---IOC實現原理(三)
原文地址:https://blog.csdn.net/zuoxiaolong8810/article/details/8548478 上一章我們已經初步認識了BeanFactory和BeanDefinition,一個是IOC的核心工廠介面,一個是IOC的be
Spring原始碼分析之BeanPostProcessor介面和BeanFactoryPostProcessor介面方法不執行原因分析
首先下面是我的Bean /* * Copyright 2002-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License
spring原始碼學習之六 元素處理過程
概述: </property-placeholder> 主要用來讀取配置資訊替換Bean中的${}佔位符, 常用配置如下: <context:property-placeholder ignore-resource-not-found="
spring原始碼學習之整合Mybatis原理分析
開發十年,就只剩下這套架構體系了! >>>
Spring原始碼學習【八】SpringMVC之DispatcherServlet
目錄 一、前言 三、總結 一、前言 Web環境是Spring框架的重要應用場景,而SpringMVC又是Web開發中一個常用的框架,因此我們有必要學習一下SpringMVC的實現原理。 回到Web專案的配置檔案web.xml中,在使用SpringMV