Spring MVC學習筆記(四)

2021-09-25 05:18:31 字數 1447 閱讀 1055

@pointcut("execution(** concert.performance.perform(..))")//定義命名的切點,為@pointcut註解設定的值是乙個切點表示式,通過在performance方法上新增@pointcut註解,我們實際上擴充套件了切點表示式語言,這樣就可以在任何的切點表達中使用performance()了。

public void performance(){}//performance()方法的實際內容並不重要,在這裡它實際上應該是空的。其實該方法本身只是乙個標識,供@pointcut註解依附

@before("performance()")

public void silencecellphone()

即使使用了aspectj註解,但audience並不會被視為切面,這些註解不會解析,也不會建立將其轉換為切面的**。需要做如下操作:

@configuration

@enableaspectjautoproxy  //啟用aspectj自動**

@componentscan

public class concertconfig

}或者xml配置:

10,環繞通知(around)

@aspect

public class audience

@around("performance()")

public void watchperfomance(proceedingjoinpoint jp)

11,處理通知中的引數

@pointcut

@before("trackplayed(tracknumber)")

public void counttrack(int tracknumber)

12,屬性攔截

@aspect

public class encoreableintroducer{

@declareparents(value="concert.performance+",//通過@declareparents註解,將ecoreable介面引入到performance bean中 value屬性指定哪種型別的bean要引入該介面,標記符後面的加號表示是performance的所有子型別,而不是performance本身

defaultimpl=defaultencoreable.class)//defaultimpl指定了為引入功能提供實現的類

public static encoreable encoreable;//@declareparents註解所標註的靜態屬性指明了要引入了介面

和其他的切面一樣,我們需要在spring應用中將encoreableintroducer宣告為乙個bean:

面向註解的切面宣告有乙個明顯的劣勢:必須能夠為通知欄新增註解。為了做到這一點,必須要有原始碼。

13,xml配置

//引用audience bean

....

pointcut-ref 

學習筆記 SpringMVC(四)

spring mvc 上傳檔案 配置web.xml允許訪問 jpg 為什麼要加這一段呢?因為配置springmvc的servlet的時候,使用的路徑是 導致靜態資源在預設情況下不能訪問,所以要加上這一段,允許訪問jpg。並且必須加在springmvc的servlet之前 如果你配置spring mv...

spring mvc 學習筆記

今天主要學習spring mvc 框架的內容,以及相關的配置,如果有 不對,希望大家可以給指正,小弟在這裡先謝謝大家!spring在servlet初始化的時候通常有2種載入配置檔案的方式,一種是spring中在servlelt中配置檔案的方式,另外就是web.xml配置乙個 進行配置檔案的載入。第一...

SpringMVC 學習筆記

一 什麼是springmvc springmvc是spring框架的乙個模組,springmvc和spring無需通過中間整合層進行開發。springmvc是乙個基於mvc的web框架。spring web mvc和struts2都屬於表現層的框架,它是spring框架的一部分,我們可以從sprin...