Spring AOP XML配置及注解配置

mac2024-05-13  32

一.XML配置切面类

1.日志切面类

//切面类注解配置加两个注解 @Aspect @Component public class LoggerAspect { public Object log(ProceedingJoinPoint joinPoint) throws Throwable { System.out.println("start log:" + joinPoint.getSignature().getName()); Object object = joinPoint.proceed(); System.out.println("end log:" + joinPoint.getSignature().getName()); return object; } }

2.业务类

//业务类 @Component public class ProductService { public void doSomeService(){ System.out.println("doSomeService"); } }

3.spring.xml

<?xml version="1.0" encoding="UTF-8"?> <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" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- 注解方式aop--> <component-scan base="ServiceClass"/> <component-scan base="LoggAspect"/> <aop:aspectj-autoproxy/> <!--xml配置aop--> <bean id="productService" class="service"/> <bean id="loggerAspect" class="LoggerAspect"> <aop:config> <aop:pointcut id="pointCut" expression="execution(* package.class.*(..))" <aop:aspect id="logAspect" ref="loggerAspect"> <aop:round method="log" ref="pointcut"> </aop:aspect> </aop:config> </beans>

 

 

 

最新回复(0)