AOP的概念:

Aop即面向切面编程,是对oop的一种补充和完善,在oop中有大量重复代码,不利于各个模块的重用,Aop采用一种叫做”横切“的技术,剖解开封装的对象内部,并将那些公共行为封装到一个可重用模块,并将其命名为“Aspect\",即切面。

  1. Aspect(切面):封装了共性方法的类,里面可以定义切入点和通知,是对横切关注点的抽象。
  2. Pointcut(切入点):带有通知的连接点,用一个表达式来提现
  3. Advice(通知):增强功能的一些方法,包含before,after,afterReturning,afterThrowing,around
  4. JoinPoint(连接点): 程序执行过程中明确的点,一般是方法的调用,常作为方法的形参。
  5. Waving(织入):将切面应用到目标对象并导致产生代理对象的过程。
package com.daling.config.springAop.aop.service;

import org.apache.log4j.Logger;
import org.spring work.stereotype.Service;
@Service
public class MemberService {
    private final static Logger log = Logger.getLogger(MemberService.class);
    
    public void add(){
        System.out.println(\"======================================添加会员\");
    }
    public void remove(Integer id) throws Exception{
        System.out.println(\"======================================删除会员\");
        throw new Exception(\"这是我们自己抛出的异常\");
    }
    public void update(Integer id){
        System.out.println(\"======================================更改会员\");
    }
    public void query(Integer id){
        System.out.println(\"======================================查询会员\");
    }
}
收藏 打印