?關(guān)于栗子中types-matching=“com.imooc.aop.schema.advice.biz.*(+)”的兩點(diǎn)疑問。
關(guān)于栗子中types-matching=“com.imooc.aop.schema.advice.biz.*(+)”的兩點(diǎn)疑問。
types-matching匹配的應(yīng)該是類層面的吧這里也可以匹配方法嗎?
com.imooc.aop.schema.advice.biz.*(+),‘+’號應(yīng)該是匹配大于1次吧?這里是否意味著匹配有參數(shù)的方法,或者因?yàn)?號前邊什么也沒有所有匹配無餐的方法?
2018-07-20
這個(gè)地方,老師應(yīng)該講錯(cuò)了。
types-matching是用來匹配類型的,無關(guān)方法。在Spring官方文檔中,“The value of the types-matching attribute is an AspectJ type pattern?”
但是,AspectJ語言關(guān)于type pattern的介紹中,通配符方面,沒有看到獨(dú)立使用+加號的含義。。。。
老師案例中,可以做兩個(gè)測試:
1、將(+)去掉,一樣可以正常執(zhí)行。
2、如果匹配到方法,是會報(bào)錯(cuò)的。
2018-04-21
* :匹配單個(gè)任意字段
.. :匹配多個(gè)任意字段(在類型匹配模式中匹配多個(gè)任意子包)(在方法參數(shù)匹配模式中匹配多個(gè)任意參數(shù))
+:匹配指定類的子類(僅在類型匹配模式中作為后綴)
2017-03-25
就是匹配com.imooc.aop.schema.advice.biz這個(gè)包下的所有類的所有方法,不論什么參數(shù)和方法都匹配