当前位置: 首页 > 网络应用技术

这是吗?不需要两分钟才能开始!交叉点

时间:2023-03-09 01:44:53 网络应用技术

  好朋友,今天4岁可以分享今年春季AOP插件吗?

  该演示分为两个模块:

  ?插件模块Springboot-aop-plugin

  ?业务模块Springboot-aop-plugin使用

  ?插件模块Springboot-Aop-Plugin提供两个插件

  ?业务模块Springboot-aop-plugin使用

  将插件模块包装到JAR软件包中,然后在业务模块中配置插件的JAR软件包地址。然后激活/停止插头-in。您可以在控制台上看到不同的输出影响吗?

  主要知识

  API如下吗?

  激活插件时的呼叫数量-in 1呼叫方法

  关闭插头 - 1

  激活插头-in 1顺便说一句,激活插头-in 2效果

  哈哈很有趣,其他人正在等待小朋友自己优化?

  MethodCountingTimesPlugin插件 - 通过实现此MethodBeForeadVice来实现@before的效果

  MethodSpendTimePlugin插件-in通过实现此方法Interpector来实现@around注释的效果

  知识点的这一部分可以在文章中阅读吗?“春季AOP内部练习!”

  代码也很简单,所以我不会介绍它吗?

  PluginConfig此配置类是在初始化期间加载,分析此配置文件插件。

  DefaultPluginFactory激活插头 - 方法如下吗?

  那就是通过这个编程AOP实现

  完整的项目在GitHub上,可以在文本末尾进行链接?

  接下来,让我们谈谈这个小演示所遇到的坑吗?

  JDK11

  JDK8

  因此,在JDK11中,不可能判断AppClassLoader是否将其转换为URLCLASSLOADER来确定是否已由JAR包装加载

  完成此演示后,4YE对AOP有以下思考?

  1. AOP的条件知道AOP面临着面向剪切的编程,因此我们必须分辨出在哪里剪切以创建此代理?

  例如,春季提供的这些评论

  这些在春季模块中

  您可以参考有关春季模块的这篇文章吗?“你知道春天的七个主要模块吗?”

  同时,当创建代理对象时,CGLIB只能代表非最终类中的非最终,非静态方法。

  2.为什么使用编程AOP这突出了其优势!毕竟,编程是最灵活的哈哈。就像编程交易一样,您可以控制交易的粒径。在编程AOP中,您可以控制建议的启动并停止。

  3.优化我们文章的主题是插件。可以插入插头的特性。同时,我们使用ClassLoader来实现热量加载!

  但是,我了解到它不仅具有此功能,还可以降级到类文件。在同一分时光麻中,呵呵?

  通过这个实施此AOP插头的项目,我学到了13个技能Hahaha Hahaha

  本文在这里共享?

  仓库地址?(谢谢您的每一颗星星!)

  https://github.com/java4ye/springboot-demo-4ye

  如果您喜欢它,可以在星级标签下的公共帐户Java4ye的支持下关注4YE?