大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 核心知識之Java框架基礎知識總結

核心知識之Java框架基礎知識總結

更新時間:2020-07-08 15:09:44 來源:動力節(jié)點 瀏覽2929次

BeanFactory和ApplicationContext有什么區(qū)別

>BeanFactory可以理解為含有bean集合的工廠類。BeanFactory包含了種bean的定義,以便在接收到客戶端請求時將對應的bean實例化。

>BeanFactory還能在實例化對象的時生成協(xié)作類之間的關系。此舉將bean自身與bean客戶端的配置中解放出來。BeanFactory還包含了bean生命周期的控制,調(diào)用客戶端的初始化方法(initialization methods)和銷毀方法(destruction methods)。

>從表面上看,application context如同bean factory一樣具有bean定義、bean關聯(lián)關系的設置,根據(jù)請求分發(fā)bean的功能。但application context在此基礎上還提供了其他的功能。

>提供了支持國際化的文本消息

>統(tǒng)一的資源文件讀取方式

>已在監(jiān)聽器中注冊的bean的事件

Spring Bean的生命周期

>Spring Bean的生命周期簡單易懂。在一個bean實例被初始化時,需要執(zhí)行一系列的初始化操作以達到可用的狀態(tài)。同樣的,當一個bean不在被調(diào)用時需要進行相關的析構操作,并從bean容器中移除。

>Spring bean factory負責管理在spring容器中被創(chuàng)建的bean的生命周期。Bean的生命周期由兩組回調(diào)(call back)方法組成。

>初始化之后調(diào)用的回調(diào)方法。

>銷毀之前調(diào)用的回調(diào)方法。

>Spring框架提供了以下四種方式來管理bean的生命周期事件:

>InitializingBean和DisposableBean回調(diào)接口

>針對特殊行為的其他Aware接口

>Bean配置文件中的Custom init()方法和destroy()方法

>PostConstruct和 PreDestroy注解方式

Spring IOC如何實現(xiàn)

>Spring中的org.springframework.beans包和org.springframework.context包構成了Spring框架IoC容器的基礎。

>BeanFactory接口提供了一個先進的配置機制,使得任何類型的對象的配置成為可能。ApplicationContex接口對BeanFactory(是一個子接口)進行了擴展,在BeanFactory的基礎上添加了其他功能,比如與Spring的AOP更容易集成,也提供了處理message resource的機制(用于國際化)、事件傳播以及應用層的特別配置,比如針對Web應用的WebApplicationContext。

>org.springframework.beans.factory.BeanFactory是Spring IoC容器的具體實現(xiàn),用來包裝和管理前面提到的各種bean。BeanFactory接口是Spring IoC容器的核心接口。

說說Spring AOP

>面向切面編程,在我們的應用中,經(jīng)常需要做一些事情,但是這些事情與核心業(yè)務無關,比如,要記錄所有update*方法的執(zhí)行時間時間,操作人等等信息,記錄到日志

>通過spring的AOP技術,就可以在不修改update*的代碼的情況下完成該需求。

Spring AOP實現(xiàn)原理

>Spring AOP中的動態(tài)代理主要有兩種方式,JDK動態(tài)代理和CGLIB動態(tài)代理。JDK動態(tài)代理通過反射來接收被代理的類,并且要求被代理的類必須實現(xiàn)一個接口。JDK動態(tài)代理的核心是InvocationHandler接口和Proxy類。

>如果目標類沒有實現(xiàn)接口,那么Spring AOP會選擇使用CGLIB來動態(tài)代理目標類。CGLIB(Code Generation Library),是一個代碼生成的類庫,可以在運行時動態(tài)的生成某個類的子類,注意,CGLIB是通過繼承的方式做的動態(tài)代理,因此如果某個類被標記為final,那么它是無法使用CGLIB做動態(tài)代理的。

動態(tài)代理(cglib與JDK)

>JDK動態(tài)代理類和委托類需要都實現(xiàn)同一個接口。也就是說只有實現(xiàn)了某個接口的類可以使用Java動態(tài)代理機制。但是,事實上使用中并不是遇到的所有類都會給你實現(xiàn)一個接口。因此,對于沒有實現(xiàn)接口的類,就不能使用該機制。而CGLIB則可以實現(xiàn)對類的動態(tài)代理。

核心知識之Java框架基礎知識總結

以上就是動力節(jié)點java培訓機構的小編針對“核心知識之Java框架基礎知識總結”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 精品国产日韩一区三区 | www.久草视频| 青草免费免费观看视频在线 | 久久嫩草| 亚洲情欲 | 97国产精品国产品国语字幕 | 欧美另类精品 | 欧美特黄aaaaaa | 伊人网站视频 | 伊人久久国产免费观看视频 | 亚洲精品一二三四区 | 国产高清一级视频在线观看 | 91精品在线免费 | 国产成人久久久精品一区二区三区 | 国产大陆亚洲精品国产 | 国产理论最新国产精品视频 | 777色狠狠一区二区三区 | 日韩欧美在线不卡 | 一级特黄a视频 | 99久久精品国产免费 | 国产羞羞事1000部在线观看 | 福利在线观看视频 | 日本久久高清视频 | 日韩字幕一中文在线综合 | 九九99线视频在线观看 | 国产精品久久久久久久久 | 成年女人aaaaa毛片 | 青青青免费高清视频在线 | 中文字幕精品久久 | 激情浪荡yin乱之合集 | 国产精品原创 | 一本大道久久香蕉成人网 | 亚洲精品一区二区中文 | 久久久久国产成人精品亚洲午夜 | 深夜视频在线免费观看 | 天天综合色天天综合网 | 亚洲一区天堂 | 精品视频中文字幕 | 中文字幕中韩乱码亚洲大片 | 日本aa在线| 91香蕉嫩草|