七 SpringAOP入門案例(基於xml配置)

2021-10-06 15:13:06 字數 1932 閱讀 8002

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...