zoukankan      html  css  js  c++  java
  • Spring AOP

    1. 在pom.xml文件里面添加依赖

    <dependency>

      <groupId>org.springframework</groupId>

      <artifactId>spring-context</artifactId>

      <version>4.3.9.RELEASE</version>

       </dependency>

    <!--

     Spring AOP的实现依托于Aspect框架(AOP框架)

     所以要引用1.8.5有问题 -->

    <dependency>

    <groupId>org.aspectj</groupId>

    <artifactId>aspectjrt</artifactId>

    <version>1.8.9</version>

    </dependency>

    <dependency>

    <groupId>org.aspectj</groupId>

    <artifactId>aspectjweaver</artifactId>

    <version>1.8.9</version>

    </dependency>

    2. 创建一个切面类

    以为这个类属于一个业务,需要添加@Service

    这个业务需要在运行的过程中添加一些扩展业务,添加注解@Aspect

    2.1 在这个类里面方法前添加环绕通知,以及切入点

    @Pointcut("需要切入点的bean对象")

    @Around

    这两个注解可以合在一块写

    @Around("需要切入的bean对象")

    例如:

    /**
    * 切入点的定义(借助@Pointcut注解进行描述)
    */
    @Pointcut("bean(sysUserServiceImpl)")
    public void doPointCut(){}
    /**
    * @Around修饰的方法为一个环绕的通知
    * 可以在目标方法执行之前和之后添加扩展业务
    * @param jp 连接点(封装了要执行的具体方法对象信息)
    * @return
    */
    @Around("doPointCut()")
    //@Around("bean(sysUserServiceImpl)")
    public Object aroundMethod(ProceedingJoinPoint jp)

    2.2  在@Around修饰的方法里面描述目标方法执行前和执行后添加扩展业务

    // result 为目标方法返回值

    Object result = jp.proceed();//这个方法用来执行切入点的目标方法

    2.3  将数组转化成Json串

    String params=new ObjectMapper().//jackson
    writeValueAsString(jp.getArgs());

    使用writeValuesAsString的方法就可以把对角转化成json字符串。

  • 相关阅读:
    013.Kubernetes认证授权
    012.Kubernetes的configmap和secret配置
    011.Kubernetes使用共享存储持久化数据
    010.kubernets的调度系统之daemonset
    009.kubernets的调度系统之污点和容忍
    008.kubernets的调度系统之标签选择器
    007.kubernets的headless service配置和ingress的简单配置
    Meterpreter初探
    渗透第一课:尝试渗透
    Metasploit漏洞扫描
  • 原文地址:https://www.cnblogs.com/gxlaqj/p/9877151.html
Copyright © 2011-2022 走看看