1逸爵、Spring 主要思想是什么具滴,回答 IOC 和AOP,怎么自己實現(xiàn) AOP 师倔?
IOC 的好處
使用基于反射的動態(tài)代理
2构韵、SpringAOP 用的哪一種代理
JDK 動態(tài)代理,這種是一般意義上的動態(tài)代理趋艘;用一個代理類來間接調(diào)用目標類的方法疲恢。目標類如果實現(xiàn)了接口那就用這種方式代理。
cglib 動態(tài)代理瓷胧。通過框架轉(zhuǎn)換字節(jié)碼生成目標類的子類显拳,并覆蓋其中的方法實現(xiàn)增強,因為采用的是繼承搓萧,所以不能對 final 類進行代理杂数。目標類沒有實現(xiàn)任何接口,就使用這種方法
3瘸洛、spring bean 初始化過程
讀取 XML 資源揍移,并解析,最終注冊到 Bean Factory 中
4货矮、spring bean 對象的生命周期
當一個 bean 被實例化時羊精,它需要執(zhí)行一些初始化(init-method)使它轉(zhuǎn)換成可用狀態(tài)斯够。同樣囚玫,當 bean 不再需要喧锦,并且從容器中移除時,需要做一些清除工作(destroy-method)
5抓督、講講 Spring 中 ApplicationContext 初始化過程燃少。
ApplicationContext 的初始化重點是在refresh方法,其中最關(guān)鍵的幾步是:
創(chuàng)建 bean Factory
初始化消息源
初始化應(yīng)用事件傳播器
初始化單例 bean
6铃在、SpringMVC 處理請求的流程
收到用戶請求
dispatcher Servlet 將請求轉(zhuǎn)發(fā)到相應(yīng)的 Controller
通過 View Resolver 進行視圖解析
返回給用戶
7阵具、SpringMVC 的設(shè)計模式
8、Spring 的 annotation 如何實現(xiàn)
9定铜、Spring攔截器怎么使用阳液,Controller是單例嗎
Controller 是單例的,跟 Servlet 一樣揣炕。
基于 XML 配置文件
基于注解
基于 Spring 定義的 MethodInterceptor 接口
關(guān)注重慶java圈