1. 在pom.xml中加入aop依赖:

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

2.创建连接点(Jointed pointed)

Spring boot连接点(jointed pointed)是一个函数,它通常是一个服务中的函数,类上面用@Service标识;这个类的唯一要求是必须由一个接口实现,且连接点必须是接口中的一个函数。

3. 创建切面(Aspect)

Aspect是一个类,它由@Aspect标识,然后,其中包含了@Before, @Around, @After,@AfterReturn,@AfterThrowing标识的几个函数,用于织入连接点函数;为简化,这个类需要增加一个切点(@Pointcut函数)用于标识连接点函数,它用一个正则表达式表示连接点函数的全限定字串;

4.在主类中建立Aspect的初始化函数,它用@Bean标识,表示返回一个bean,返回类型是你前面定义的Aspect类;

4.创建一个控制器就可以测试了。

可以看出,这切面并不能控制连接点中的操作,它只是完成与连接点函数相关的一些事务性工作,如在调用连接点前要进行数据库连接,在完成存储后需要关闭连接,在发生异常后需要显示异常信息。

最新文章

  1. 【好书摘要】性能优化中CPU、内存、磁盘IO、网络性能的依赖
  2. 转:在VS2010下编译、调试和生成mex文件
  3. 使用Servlet和jdbc创建用户登录验证
  4. SQLServer事务
  5. storm - 基础概念整理
  6. 简单的activemq的封装和使用
  7. spring mvc DispatcherServlet详解之interceptor和filter的区别
  8. 用response输出一个验证码
  9. ES2:ElasticSearch 集群配置
  10. 致DBA:为什么你经常犯错,是因为你做的功课不够
  11. hdu 5480(前缀和)
  12. Android 高级控件(七)——RecyclerView的方方面面
  13. Linux-ftp服务搭建
  14. Django电商项目---完成注册页面和用户登录day1
  15. PHP之字符串类型
  16. WPF经典编程模式-MVVM示例讲解
  17. Anaconda+django写出第一个web app(九)
  18. geoserver 添加图层数据
  19. ES之六:ElasticSearch中Filter和Query的异同
  20. python is 和 == 的区别

热门文章

  1. 【概率dp】vijos 3747 随机图
  2. SpringBoot项目中使用Bootstrap 的CSS、JS资源
  3. np中的随机函数
  4. Map遍历效率 : entrySet &gt; keySet
  5. BZOJ 4802: 欧拉函数 (Pollard-Rho)
  6. python下vs的使用
  7. HDU 3374 exkmp+字符串最大最小表示法
  8. g++版本低于4.7使用C++11
  9. 利用简单的有限状态机(FSM)来实现一个简单的LED流水灯
  10. c 判断一个字符是否为空格