java註解,反射

C_ptx發表於2017-04-01

//測試反射獲取方法名和註解名字和引數 

public static void main(String[] args) {

        Method[] methods = PurchaserOrderController.class.getMethods();//類中的方法組合
        for (Method method : methods) {
            System.out.print(method.getName() + ":");
            System.out.print(method.getAnnotation(PreventRecoverySubmit.class));//方法名稱上的註解
            System.out.println();
        }

    }

//定義一個切面程式設計

(定義這個切面之前先匯入jar包)

<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.9</version>
</dependency>


@Aspect   //定義一個切面
@Order(10)//排序
@Component

public class LogAspect {

  private static final Logger logger = LoggerFactory.getLogger(LogAspect.class);

   // 定義切點Pointcut
         @Pointcut("execution(* com.ouryue.*.controller.*Controller.*(..))")

 @Around("excudeService()")
    public Object doAround(ProceedingJoinPoint pjp) throws Throwable {

//方法執行前...

 Object result = pjp.proceed();//執行新增註解的方法

//方法執行後...

}

}

相關文章