Spring框架

5.4 重用切入點(diǎn)定義

  • 在編寫AspectJ切面時(shí),可以直接在通知注解中書寫切入點(diǎn)表達(dá)式。但同一個(gè)切點(diǎn)表達(dá)式可能會(huì)在多個(gè)通知中重復(fù)出現(xiàn)。
  • 在AspectJ切面中,可以通過(guò)@Pointcut注解將一個(gè)切入點(diǎn)聲明成簡(jiǎn)單的方法。切入點(diǎn)的方法體通常是空的,因?yàn)閷⑶腥朦c(diǎn)定義與應(yīng)用程序邏輯混在一起是不合理的。
  • 切入點(diǎn)方法的訪問(wèn)控制符同時(shí)也控制著這個(gè)切入點(diǎn)的可見性。如果切入點(diǎn)要在多個(gè)切面中共用,最好將它們集中在一個(gè)公共的類中。在這種情況下,它們必須被聲明為public。在引入這個(gè)切入點(diǎn)時(shí),必須將類名也包括在內(nèi)。如果類沒有與這個(gè)切面放在同一個(gè)包中,還必須包含包名。
  • 其他通知可以通過(guò)方法名稱引入該切入點(diǎn)
  • 5.3???? 指定切面的優(yōu)先級(jí)

    • 在同一個(gè)連接點(diǎn)上應(yīng)用不止一個(gè)切面時(shí),除非明確指定,否則它們的優(yōu)先級(jí)是不確定的。
    • 切面的優(yōu)先級(jí)可以通過(guò)實(shí)現(xiàn)Ordered接口或利用@Order注解指定。
    • 實(shí)現(xiàn)Ordered接口,getOrder()方法的返回值越小,優(yōu)先級(jí)越高。
    • 若使用@Order注解,序號(hào)出現(xiàn)在注解中