spring的aop是面向切面程式設計的意思,不需要改變原有**的基礎上對原有**進行增強
我們來看入門案例
首先建立乙個service介面
package com.lp.service;
/** * @date 2020/5/29 14:37
* @author luopeng
*/public
inte***ce
accountservice
然後是它的實現類
package com.lp.service.impl;
import com.lp.service.accountservice;
/** * @date 2020/5/29 14:40
* @author luopeng
*/public
class
accountserviceimpl
implements
accountservice
public
void
updateaccount()
public
void
deleteaccount
(int id)
}
接下來我們將對service中的方法進行增強操作,我們寫乙個工具類來模擬操作
package com.lp.utils;
/** * 用於記錄日誌的工具類,它裡面提供了公共方法
* * @date 2020/5/29 14:41
* @author luopeng
*/public
class
logger
}
接下來要寫xml配置
<?xml version="1.0" encoding="utf-8"?>
xmlns
=""xmlns:xsi
=""xmlns:aop
=""xsi:schemalocation
="/spring-beans.xsd
/spring-aop.xsd"
>
"accountservice"
class
="com.lp.service.impl.accountserviceimpl"
/>
"logger"
class
="com.lp.utils.logger"
/>
<
aop:config
>
<
aop:aspectid=
"logadvice"
ref="logger"
>
<
aop:before
method
="printlog"
pointcut
="execution(* com.lp.service.impl.*.*(..))"
>
aop:before
>
aop:aspect
>
aop:config
>
beans
>
隨手寫乙個測試類測試一下
package com.lp.test;
import com.lp.service.accountservice;
import org.springframework.beans.factory.annotation.autowired;
/** * @date 2020/5/29 15:06
* @author luopeng
*/public
class
aoptest
}
Spring AOP之入門小案例
1.定義切面類aspect 增添 component 告訴spring容器掃瞄這個元件 aspect 告知spring這個類是個切面類 兩個註解 定義切面類 aspect component public class loggingadvice 2.定義切點pointcut 定義切點,並定義在哪些地...
Spring AOP 入門學習
儘管用spring開發了一段時間,但僅僅使用了其ioc容器與mvc功能,對於aop與事務管理涉獵甚少。今天看了一下aop方面的東西,其描述似乎確實能夠解決常見的幾個頭疼的問題 日誌記錄 錯誤處理 與許可權控制。這類問題稱之為crosscutting需求,是指在乙個程式中影響 橫切 其它關係的aspe...
spring aop入門 序列三
前兩部分了解了aop的 以及aop的基本術語,本節通過乙個簡單的例子來入門下aop。這裡通過乙個簡單的 效能評估 的例子來表述下 效能監控子方法 public class methodperformance public void printperformance 效能監控主方法 public cl...