1 创建注解
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface SysLog {
String name();
String uid();
}
2处理注解
package com.ynalz.aspect.interf;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.annotation.*;
import org.springframework.stereotype.Component;
@Aspect
@Component
@Slf4j
public class SysLogAspect {
@Pointcut("@annotation(sysLog)")
public void SysLogAop(SysLog sysLog){
}
@After(value = "SysLogAop(sysLog)")
public void addSysLog(SysLog sysLog){
System.out.println(sysLog.name());
System.out.println(sysLog.uid());
}
}
3使用注解
@SysLog(name = "测试",uid="133233")
@PostMapping("/InExsel")
public void InExsel(@RequestBody @RequestParam("file") MultipartFile file) throws IOException {