SpringBoot入门(18)- AOP

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangminemail/article/details/82927177

1、添加aop依赖

<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-aop</artifactId>
		</dependency>

2、创建切面

@Aspect注解类未切面

@Before 通知织入(“execultion(“com.edu.spring.dao..*.*(..)”)”)

import org.springframework.stereotype.Repository;

@Repository
public class UserDao {

	public void add(String username,String password){
		System.out.println("user add "+username);
	}
	
	public void list(){
		System.out.println("list ======= list...");
	}
}
@Aspect
@Component
public class LogAspect {

	@Before("execution(* com.zemel.test.dao..*.add(..))")
	public void log(){
		System.out.println("method log done...");
	}
	
	
}

3、配置启用aop(默认是启用的)

参考autoconfig下的AopAutoConfiguration.class

spring.aop.auto=true

spring.aop.proxy-target-class=false:使用jdk做代理

spring.aop.proxy-target-class=true:使用cglib做代理

使用参数

注:使用了jdk的代理之后,只能使用接口获取对象

4、SpringBoot提供了注解@EnableAspectJAutoProxy

使用该注解开启AOP功能,配置文件就可以不配置

猜你喜欢

转载自blog.csdn.net/zhangminemail/article/details/82927177