栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

spring框架AOP注解的使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

spring框架AOP注解的使用

注解的优点:

1、XML配置起来有时候冗长,此时注解可能是更好的选择,如jpa的实体映射;

2、注解最大的好处就是简化了XML配置;

3、注解相对于XML的另一个好处是类型安全的,XML只能在运行期才能发现问题。

1.开启全局注解扫描





    


    
    


 

2.注解所有通知


@Component
@Aspect  //标记当前类是通知类
public class AllAdvice {

    //实现切点表达式的复用
    @Pointcut("execution(* *(..))")
    public void all(){}

    //前置通知
    @Before("all()")
    public void before(){
        System.out.println("------------前置通知-------------");
    }

    //后置通知
    @AfterReturning("all()")
    public void afterReturning(){
        System.out.println("------------后置通知-------------");
    }

    //异常通知
    @AfterThrowing("all()")
    public void afterThrowing(){
       System.out.println("------------异常通知-------------");
    }

    //最终通知
    @After("all()")
    public void after(){
        System.out.println("------------最终通知-------------");
    }

    //环绕通知
    @Around("all()")
    public Object around(ProceedingJoinPoint proceedingJoinPoint){

        try {
            System.out.println("------------环绕前置通知-------------");
            Object proceed = proceedingJoinPoint.proceed();
            System.out.println("------------环绕后置通知-------------");
            return proceed;
        } catch (Throwable throwable) {
            throwable.printStackTrace();
            System.out.println("------------环绕异常通知-------------");
        }finally {
            System.out.println("------------环绕最终通知-------------");
        }
        return null;
    }
}

 3.异常通知

    //异常通知   和后置通知永远只能执行一个
    @AfterThrowing("execution(* cn.kgc.spring.service.StudentServiceImpl.*(..))")
    public void exceptionMethod(){
        System.out.println("异常通知");
    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1006573.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号