色欲av一区久久精品_久久综合色综合色88_无码在线观看不卡_色黄视频网站_亚洲国产精品久久久久秋霞66

Spring中IOC,AOP概念

時間:2022-07-14

Spring

對于網(wǎng)站開發(fā)而言,spring是一個輕量級的管理框架,主要用于管理各個組件之間的關(guān)系。核心功能有ioc和aop


spring創(chuàng)建對象有三種方式:

1、在xml文件中使用bean標(biāo)簽創(chuàng)建對象

2、在xml文件中開啟掃描注解,在類的上面添加對應(yīng)的注釋創(chuàng)建對象,常用的注解有:@component、@controller、@service、@mapper

3、通過配置類的方式創(chuàng)建對象。在類上面加@configuration注解,在需要創(chuàng)建的對象上面加@Bean注解前兩種創(chuàng)建對象的方式是通過反射來創(chuàng)建的,配置類創(chuàng)建對象是程序員自己new出來的

spring使用的設(shè)計模式有工廠模式,代理模式,單例模式,模板方法,觀察者模式


image.png


IOC

ioc是控制反轉(zhuǎn),即把用戶管理對象的權(quán)力交給spring容器,spring容器可以創(chuàng)建和管理對象,spring容器默認(rèn)是單例的,在spring容器啟動時自動根據(jù)bean標(biāo)簽通過反射創(chuàng)建對象,所以在多個類中可以復(fù)用一個對象,這樣就可以節(jié)省系統(tǒng)的資源。如果我們想要改變對象的生命周期,可以修改bean標(biāo)簽的scope屬性為prototype,這樣對象的創(chuàng)建就是多例的,只有在調(diào)用getBean的時候才會創(chuàng)建一個對象。

ioc中的重點是di,即依賴注入,可以通過依賴注入的方式管理組件之間的依賴關(guān)系,從而達(dá)到解耦合的目的,取代我們之前的在一個類中創(chuàng)建另一個類的對象的方式。


依賴注入有三種方式

1、構(gòu)造器注入:利用對象的全參構(gòu)造器給對象的屬性賦值

2、set注入:先調(diào)用對象的無參構(gòu)造器,再通過調(diào)用set方法的方式去給對象的屬性賦值

3、自動注入:自動注入分為兩種,分別是byName和byType,即通過spring工廠中的其他bean標(biāo)簽的id值注入以及根據(jù)bean標(biāo)簽的類型自動注入


AOP

aop是面向切面編程,即我們可以把代碼中重復(fù)冗余的部分單獨拿出來寫在一個通知類中,我們把實現(xiàn)核心功能的方法叫做切點,這個方法所在的類稱作目標(biāo)類,即被代理的類。在xml配置文件中織入切點和通知類組成切面。也可以直接在通知類上加上@aspect注解,這個類可以成為切面,在我們實現(xiàn)通知的方法上面加上@before/@after/@around注解配置切點

通知有五種類型,分別為前置通知,后置通知,返回通知,異常通知,環(huán)繞通知

aop底層是使用動態(tài)代理實現(xiàn)的,默認(rèn)使用的是jdk動態(tài)代理,當(dāng)目標(biāo)類沒有實現(xiàn)接口時,則默認(rèn)使用cglib動態(tài)代理。aop的好處是開發(fā)人員可以專注于實現(xiàn)程序的核心代碼,而那些重復(fù)的固定的代碼可以拿出來集中處理,例如事務(wù)的控制,日志的打印,權(quán)限認(rèn)證等等


Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權(quán)利。 粵ICP備09033321號

與項目經(jīng)理交流
掃描二維碼
與項目經(jīng)理交流
掃描二維碼
與項目經(jīng)理交流
ciya68