程序员一代码搬运工
【Java学习心得和Java学习技术个人总结】

Spring面向切面(AOP)声明方式的整理

使用aop

首先需要 配置 aop头部

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"   ----
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">           ----
</beans>

 

Spring提供了两种切面声明方式。

 

1.基于XML配置方式声明切面。

 

 

<bean id="orderservice" class="com.yq1012.service.OrderServiceBean"/>
    <bean id="log" class="com.yq1012.service.LogPrint"/>

 

 

 

 

 

2.基于注解方式声明切面。

 

 

 

@Aspect
public class LogPrint {
@Pointcut("execution(* com.yq1012.service..*.*(..))")
private void anyMethod() {}//声明一个切入点
@Before("anyMethod() && args(userName)")//定义前置通知
public void doAccessCheck(String userName) {
}
@AfterReturning(pointcut="anyMethod()",returning="revalue")//定义后置通知
public void doReturnCheck(String revalue) {
}
@AfterThrowing(pointcut="anyMethod()", throwing="ex")//定义例外通知
    public void doExceptionAction(Exception ex) {
}
@After("anyMethod()")//定义最终通知
public void doReleaseAction() {
}
@Around("anyMethod()")//环绕通知
public Object doBasicProfiling(ProceedingJoinPoint pjp) throws Throwable {
return pjp.proceed();
}
}

 

赞(0)
未经允许不得转载:程序员一代码搬运工 » Spring面向切面(AOP)声明方式的整理
分享到: 更多 (0)