controllerAOP管理設計
結構
爲什麼要設計這個接口
-
對controller的方法AOP處理,不同的開發人員因爲對業務的理解不同,做很多處理,定義了很多切點,最後形成維護了很多功能的AOP管理。案例如下
- 開發1:實現一個註解a,調用a註解的方法有起到防重複的功能。開發1定義一個AOP切面a_aop,切點是整個controller層
- 開發2:實現一個註解b,調用b註解的方法可以起到加簽驗證功能。開發2定義一個AOP切面b_aop,切點是整個controller層
- 開發3:實現一個註解c,調用c註解的方法可以起到參數加密驗證功能。開發3定義一個AOP切面c_aop,切點是整個
- 開發4,開發5…
-
從上面可以看到,整個項目有很多切面,其中很多切面的切點都是一樣的,這樣代碼執行a_aop還有執行x_aop切面,最後才執行業務代碼,非常影響性能,且代碼維護成本過高。
設計這個接口的作用
- 簡化AOP切面的管理,降低代碼維護成本
- 對外提供一個總接口,所有子類一一對應相應的註解方法
- 後期擴展按註解擴展
目前功能
- 處理controller方法是否執行
- 處理controller方法執行前需要發生的一些動作,比如說緩存,當前還沒有使用