1. 程式人生 > 實用技巧 >AOP配置步驟

AOP配置步驟

spring中基於XML的AOP配置步驟
        1. 把通知類Bean也交給spring來管理
        2. 使用aop:config表明開始aop配置
        3. 使用aop:aspect標籤表明配置切面
            id屬性:給切面提供一個唯一標識
            ref屬性:指定通知類bean的ID
        4. 在aop:aspect標籤的內部使用對應的標籤來配置通知型別
            我們現在示例是讓printLog方法在切入點方法執行之前通知:所以是前置通知
            aop:before:標識前置通知
                method:屬性:用於指定Logger類中哪個方法是前置通知
                pointcut屬性:用於指定切入點表示式,該表示式的含義指的是對業務層中那些方法增強
            切入點表示式的寫法:
                關鍵字:execution(表示式)
                表示式:
                    訪問修飾符   返回值 包名.包名.包名...類名.方法名(引數列表)
                    標準的表示式寫法:
                            public void com.example.service.impl.AccountServiceImpl.saveAccount()
                    全統配寫法:
                            * *..*.*(..)
                    訪問修飾符可以省略
                            void com.example.service.impl.AccountServiceImpl.saveAccount()
                    返回值可以使用萬用字元
                            * com.example.service.impl.AccountServiceImpl.saveAccount()
                    包名可以使用萬用字元
                            * *.*.*.*.AccountServiceImpl.saveAccount()
                    當前包及其子包 ..
                            * *..AccountServiceImpl.saveAccount()
                     類名和方法名可以使用萬用字元
                            * *..*.*()
                     引數列表:
                        基本型別直接寫: int
                        應用型別寫全限定型別:java.lang.String
                            * *..*.*(int)
                        可以使用*標識任意型別
                            * *..*.*(*)
                        可以使用..標識有無引數都行
                            * *..*.*(..)
                      實際專案中的寫法:
                            * com.example.service.impl.*.*(..)