Spring AOP实战和源码分析

文章目录

  • 基本概念
    • 引入AOP的意义
  • 实战
  • 源码解析
    • 底层实现

基本概念

引入AOP的意义

与OOP(Object Oriented Programming 面向对象)对比,传统的OOP开发中的代码逻辑是自上而下的过程中会产生横切性的问题,而这些横切性的问题又与我们主业务逻辑关系不大,会散落在代码的各个地方,造成难以维护。
AOP的编程思想就是把这些横切性问题和主业务逻辑进行分离,从而起到解耦的目的。

实战

源码解析

底层实现

Spring AOP的底层代理模式有两种,一种是Jdk动态代理,另一种是cglib代理。AOP动态代理没有默认的,取决于被代理对象有没有实现了接口。如何代理对象实现了接口,用的是Jdk动态代理,如果没有实现接口用的是Cglib动态代理。

你可能感兴趣的:(java学习笔记)