diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..da0415a
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 35827c3..8f6f5c3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,6 +24,11 @@
org.projectlombok
lombok
+
+
+ org.springframework.boot
+ spring-boot-starter-aop
+
diff --git a/src/main/java/com/bwie/App.java b/src/main/java/com/bwie/App.java
index 04ce79e..90955e3 100644
--- a/src/main/java/com/bwie/App.java
+++ b/src/main/java/com/bwie/App.java
@@ -2,8 +2,10 @@ package com.bwie;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
@SpringBootApplication
+@EnableAspectJAutoProxy
public class App {
public static void main(String[] args) {
diff --git a/src/main/java/com/bwie/aop/RepeatEnum.java b/src/main/java/com/bwie/aop/RepeatEnum.java
new file mode 100644
index 0000000..85b06d1
--- /dev/null
+++ b/src/main/java/com/bwie/aop/RepeatEnum.java
@@ -0,0 +1,12 @@
+package com.bwie.aop;
+
+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 RepeatEnum {
+
+}
diff --git a/src/main/java/com/bwie/aop/RepeatSubmit.java b/src/main/java/com/bwie/aop/RepeatSubmit.java
new file mode 100644
index 0000000..e431e4b
--- /dev/null
+++ b/src/main/java/com/bwie/aop/RepeatSubmit.java
@@ -0,0 +1,29 @@
+package com.bwie.aop;
+
+import lombok.extern.log4j.Log4j2;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.aspectj.lang.annotation.Pointcut;
+import org.springframework.stereotype.Component;
+
+@Log4j2
+@Aspect
+@Component
+public class RepeatSubmit {
+
+ private final ThreadLocal threadLocal=new ThreadLocal<>();
+
+ @Pointcut("@annotation(com.bwie.aop.RepeatEnum)")
+ private void pointcut(){}
+
+ @Before("pointcut()")
+ public void bef(){
+ log.info("切面 -前");
+ }
+
+ @After("pointcut()")
+ public void aft(){
+ log.info("切面 -后");
+ }
+}
diff --git a/src/main/java/com/bwie/controller/TestController.java b/src/main/java/com/bwie/controller/TestController.java
index 3e659b9..ffd4b16 100644
--- a/src/main/java/com/bwie/controller/TestController.java
+++ b/src/main/java/com/bwie/controller/TestController.java
@@ -1,5 +1,6 @@
package com.bwie.controller;
+import com.bwie.aop.RepeatEnum;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -20,6 +21,7 @@ public class TestController {
private static final String apiTemplate="%s:%s:%s";
+ @RepeatEnum
@PostMapping
public String post(@RequestHeader("token") String token, @RequestBody String str){
String format = String.format(apiTemplate, token, request.getRequestURI(), str);
diff --git a/target/classes/com/bwie/App.class b/target/classes/com/bwie/App.class
index 1296009..0291e2a 100644
Binary files a/target/classes/com/bwie/App.class and b/target/classes/com/bwie/App.class differ
diff --git a/target/classes/com/bwie/aop/RepeatEnum.class b/target/classes/com/bwie/aop/RepeatEnum.class
new file mode 100644
index 0000000..801dbfd
Binary files /dev/null and b/target/classes/com/bwie/aop/RepeatEnum.class differ
diff --git a/target/classes/com/bwie/aop/RepeatSubmit.class b/target/classes/com/bwie/aop/RepeatSubmit.class
new file mode 100644
index 0000000..e07d78c
Binary files /dev/null and b/target/classes/com/bwie/aop/RepeatSubmit.class differ
diff --git a/target/classes/com/bwie/controller/TestController.class b/target/classes/com/bwie/controller/TestController.class
index bfba7ce..118fb78 100644
Binary files a/target/classes/com/bwie/controller/TestController.class and b/target/classes/com/bwie/controller/TestController.class differ
diff --git a/target/demo11-1.0-SNAPSHOT.jar b/target/demo11-1.0-SNAPSHOT.jar
index aed0425..4057997 100644
Binary files a/target/demo11-1.0-SNAPSHOT.jar and b/target/demo11-1.0-SNAPSHOT.jar differ
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
index 51d8705..e0f8dfe 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -1,9 +1,11 @@
+com\bwie\aop\RepeatSubmit.class
com\bwie\config\WebMvcConfig.class
com\bwie\controller\LoginController.class
com\bwie\domian\UserInfo.class
com\bwie\Filter\TokenFilter.class
com\bwie\controller\TestController.class
com\bwie\domian\req\LoginReq.class
+com\bwie\aop\RepeatEnum.class
com\bwie\domian\UserInfo$UserInfoBuilder.class
com\bwie\config\LoginUserMap.class
com\bwie\App.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
index 3e0957d..0333393 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -2,6 +2,8 @@ D:\Project\demo11\src\main\java\com\bwie\config\LoginUserMap.java
D:\Project\demo11\src\main\java\com\bwie\domian\req\LoginReq.java
D:\Project\demo11\src\main\java\com\bwie\config\WebMvcConfig.java
D:\Project\demo11\src\main\java\com\bwie\Filter\TokenFilter.java
+D:\Project\demo11\src\main\java\com\bwie\aop\RepeatSubmit.java
+D:\Project\demo11\src\main\java\com\bwie\aop\RepeatEnum.java
D:\Project\demo11\src\main\java\com\bwie\domian\UserInfo.java
D:\Project\demo11\src\main\java\com\bwie\controller\LoginController.java
D:\Project\demo11\src\main\java\com\bwie\controller\TestController.java