zoukankan      html  css  js  c++  java
  • beanPostProcessor处理流程理解。

    测试前准备:

    1. 使用 springboot web 构建项目,并在service中加上 @Async (要使用@EnableAsync开启异步处理) 和@Validated 这里这个service 初始化时就必须要经过这两个对应的beanPostProcessor 
    2. 在abstractAdvisingBeanPostProcessor中的  postProcessAfterInitalization中加上断点,并配置断点的condition 为 beanName.contains("testServiceImpl") 其中testServiceImpl为我们加上@Async和@Validated的service 名称
    3. 启动项目跟着流程走即可。

    重点类讲解:

    1. 生成service的代理类时会指定一个接口列表,我们通常只指定一个。注意:在这里我们的service 至少设置了一个即为 接口 Advised

     

    1. 判断当前对象是否生成代理类,如果已生成代理类(肯定已经代理了Advised 接口),就会把当前类的切面类增加到代理类的切面列表里面。
    2. 如果没有,则生成代理类。

  • 相关阅读:
    oracle第四天笔记
    oracle第三天笔记
    oracle第二天笔记
    select min from 连接
    decode 函数用法
    服务器
    婚姻
    黑马2018年JavaEE课程大纲
    Kubernetes本地私有仓库配置
    ELK系统分析nginx日志
  • 原文地址:https://www.cnblogs.com/z-test/p/12710996.html
Copyright © 2011-2022 走看看