Step1:項目 aop_leadin1
先定義好接口與一個實現類,該實現類中除了要實現接口中的方法外,還要再寫兩個非業務方法。非業務方法也稱為交叉業務邏輯:
● doTransaction():用于事務處理
● doLog():用于日志處理
然后,再使接口方法調用它們。接口方法也稱為主業務邏輯。
當然,也可以有另一種解決方案:將這些交叉業務邏輯代碼放到專門的工具類或處理類中,由主業務邏輯調用。
以上的解決方案,還是存在弊端:交叉業務與主業務深度耦合在一起。當交叉業務邏輯較多時,在主業務代碼中會出現大量的交叉業務邏輯代碼調用語句,大大影響了主業務邏輯的可讀性,降低了代碼的可維護性,同時也增加了開發難度。
所以,可以采用動態代理方式。在不修改主業務邏輯的前提下,擴展和增強其功能。