官术网_书友最值得收藏!

3.6 本章小結(jié)

本章系統(tǒng)分析了Spring所提供的AOP設(shè)計(jì)思想和實(shí)現(xiàn)方案。在使用Spring開發(fā)應(yīng)用程序的過程中,AOP是一項(xiàng)基礎(chǔ)功能,可以說是無處不在。我們?cè)敿?xì)描述了Spring AOP中的核心概念,并通過一個(gè)完整案例提供對(duì)應(yīng)的使用方法。

AOP的底層實(shí)現(xiàn)依賴于動(dòng)態(tài)代理,Spring也為開發(fā)人員提供了兩種可選的代理機(jī)制,即JDK動(dòng)態(tài)代理和CGLIB動(dòng)態(tài)代理。不同的代理機(jī)制具有不同的性能表現(xiàn),本章通過一個(gè)案例量化分析了引入不同代理機(jī)制對(duì)系統(tǒng)性能造成的影響。通過案例分析,我們明確了使用JDK動(dòng)態(tài)代理能夠提供更好的性能,這也是本書所推薦的代理機(jī)制。

同時(shí),在使用Spring AOP的過程中,我們也總結(jié)了一些最佳實(shí)踐。Spring AOP中的切點(diǎn)表達(dá)式非常強(qiáng)大,可以通過在空方法上聲明切點(diǎn)以及盡量聲明小的切點(diǎn)等開發(fā)技巧來滿足不同應(yīng)用場(chǎng)景下的切點(diǎn)管理需求。而因?yàn)镾pring使用了代理機(jī)制來實(shí)現(xiàn)AOP,但代理的目標(biāo)不能是類內(nèi)方法,所以可以使用Spring為我們提供的AopContext工具類解決這個(gè)問題。

主站蜘蛛池模板: 和顺县| 会理县| 安吉县| 许昌市| 邵武市| 郯城县| 静乐县| 连城县| 渭南市| 锡林郭勒盟| 新泰市| 治多县| 丹凤县| 集贤县| 巴东县| 霍州市| 九江县| 八宿县| 和硕县| 措美县| 太保市| 睢宁县| 固原市| 荔波县| 樟树市| 巴林左旗| 永嘉县| 建阳市| 四会市| 綦江县| 霍城县| 平定县| 罗江县| 四川省| 金昌市| 新民市| 靖西县| 株洲县| 庆城县| 贡觉县| 徐州市|