码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Spring学习|使用Spring实现AOP,三种方式:原生Spring API接口、自定义类、注解方式


    使用Spring实现AOP

     [重点]使用AOP织入,需要导入一个依赖包!

    方式一:原生Spring API接口

    创建一个增删改查的接口,并创建一个类实现这个接口,定义每个方法的具体操作。

    创建一个方法执行前的操作类,实现MethodBeforeAdvice类

    创建一个方法执行后的操作类,实现AfterReturningAdvice类

    在bean.xml中导约束、配AOP

    在bean.xml中先注册上述的三个类为bean,让后导入AOP的约束,pointcut为切点,也就是我们所要增强的方法位置,以及配置我们增强的方法,同这个方法所要插入的切点位置。

    获取对象调用方法

    编写测试类,获取context对象,然后通过getBean获取到之前我们定义的增删改查的那个类的接口,我们获得的是接口,然后用接口调用我们所想使用的方法,发现方法已经被加强,我们定义的方法前的操作以及方法后的操作已经增加上去了、

    方式二:自定义类

    自己自定义个类,里面设置一个方法执行前的操作(before方法),以及一个方法执行后的操作(after方法)

    在bean.xml中配置,注册我们刚才自定义的类,将其定义为切面,定义切点,然后配置切面的方法以及对应加入的切点。

    编写测试类,获得context对象,调用getBean方法,获取到增删改查类的接口,并调用相关方法,发现也可以加强。

    方式三:注解方式

    自己自定义个类,里面设置一个方法执行前的操作(before方法),以及一个方法执行后的操作(after方法)@Aspect注解就代表这个类是一个切面,等同于之前的在bean.xml中定义的一样,@Before代表方法执行前的操作以及包含了插入的位置(切点),@After代表方法执行后的操作以及包含了插入的位置(切点)

    只需在bean.xml中注册该类,并且开启注解支持即可。

    编写测试类,调用方法即可。

    也可在我们自定义的类中加一个环绕的增强方法,注解为@Around

    我们再调用方法即可看到结果

  • 相关阅读:
    Android进阶:5、发送post请求、json数据格式以及okhttp框架的使用
    面试题库(六):数据库相关
    linux内核分析:x86,BIOS到bootloader,内核初始化,syscall, 进程与线程
    项目管理培训超全总结!
    卷积神经网络(CNN)鲜花的识别
    计算机毕业论文Java项目源码下载基于SSM的旅游资讯网站含前台与后台
    Json文件编辑器 ( json-editor-vue3 详细闭坑指南)
    valueerror: Object arrays cannot be loaded when allow_pickle=False 报错解决方法
    单链表的方向翻转,为什么程序逻辑是这样的?
    手把手教NLP小白如何用PyTorch构建和训练一个简单的情感分类神经网络
  • 原文地址:https://blog.csdn.net/weixin_73149966/article/details/132837944
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号