File tree Expand file tree Collapse file tree 8 files changed +114
-19
lines changed 
kotlin/com/example/kotlin Expand file tree Collapse file tree 8 files changed +114
-19
lines changed Original file line number Diff line number Diff line change 1212
1313@ Aspect 
1414@ Component 
15- public  class  TestAspect  {
15+ public  class  SimpleAspect  {
1616
17- 	private  static  final  Logger  logger  = LoggerFactory .getLogger (TestAspect .class );
17+ 	private  static  final  Logger  logger  = LoggerFactory .getLogger (SimpleAspect .class );
1818
1919	@ Before ("execution(* com.example.java.service.*.*Aop(..))" )
2020	public  void  onBeforeHandler (JoinPoint  joinPoint ) {
Original file line number Diff line number Diff line change 77@ Service 
88public  class  TestServiceImpl  implements  TestService  {
99
10- 	 private  static  final  Logger  logger  = LoggerFactory .getLogger (TestServiceImpl .class );
10+      private  static  final  Logger  logger  = LoggerFactory .getLogger (TestServiceImpl .class );
1111
12- 	 @ Override 
13- 	 public  String  test () {
14- 		 String  msg  = "Hello, Spring Boot No AOP" ;
15- 		 logger .info (msg );
16- 		 return  msg ;
17- 	 }
12+      @ Override 
13+      public  String  test () {
14+          String  msg  = "Hello, Spring Boot No AOP" ;
15+          logger .info (msg );
16+          return  msg ;
17+      }
1818
19- 	 @ Override 
20- 	 public  String  testAop () {
21- 		 String  msg  = "Hello, Spring Boot AOP" ;
22- 		 logger .info (msg );
23- 		 return  msg ;
24- 	 }
19+      @ Override 
20+      public  String  testAop () {
21+          String  msg  = "Hello, Spring Boot AOP" ;
22+          logger .info (msg );
23+          return  msg ;
24+      }
2525}
Original file line number Diff line number Diff line change @@ -4,9 +4,9 @@ import org.springframework.boot.autoconfigure.SpringBootApplication
44import  org.springframework.boot.runApplication 
55
66@SpringBootApplication
7- class  SpringBootAopApplication  { 
8-      fun   main ( args :   Array < String >) { 
9-         runApplication< SpringBootAopApplication >( * args) 
10-     } 
7+ class  SpringBootAopApplication 
8+ 
9+ fun   main ( args :   Array < String >) { 
10+     runApplication< SpringBootAopApplication >( * args) 
1111}
1212
Original file line number Diff line number Diff line change 1+ package  com.example.kotlin.component 
2+ 
3+ import  org.aspectj.lang.JoinPoint 
4+ import  org.aspectj.lang.annotation.* 
5+ import  org.slf4j.Logger 
6+ import  org.slf4j.LoggerFactory 
7+ import  org.springframework.stereotype.Component 
8+ 
9+ @Aspect
10+ @Component
11+ class  SimpleAspect  {
12+ 
13+     private  val  logger =  LoggerFactory .getLogger(SimpleAspect ::class .java)
14+ 
15+     @Before(" execution(* com.example.kotlin.service.*.*Aop(..))" 
16+     fun  onBeforeHandler (joinPoint :  JoinPoint ) {
17+         logger.info(" =============== onBeforeThing" 
18+     }
19+ 
20+     @After(" execution(* com.example.kotlin.service.*.*Aop(..))" 
21+     fun  onAfterHandler (joinPoint :  JoinPoint ) {
22+         logger.info(" =============== onAfterHandler" 
23+     }
24+ 
25+     @AfterReturning(pointcut =  " execution(* com.example.kotlin.service.*.*Aop(..))" =  " str" 
26+     fun  onAfterReturningHandler (joinPoint :  JoinPoint , str :  Any ) {
27+         logger.info(" @AfterReturning : $str " 
28+         logger.info(" =============== onAfterReturningHandler" 
29+     }
30+ 
31+     @Pointcut(" execution(* com.example.kotlin.service.*.*Aop(..))" 
32+     fun  onPointcut (joinPoint :  JoinPoint ) {
33+         logger.info(" =============== onPointcut" 
34+     }
35+ }
Original file line number Diff line number Diff line change 1+ package  com.example.kotlin.config 
2+ 
3+ import  org.springframework.context.annotation.Configuration 
4+ import  org.springframework.context.annotation.EnableAspectJAutoProxy 
5+ 
6+ @Configuration
7+ @EnableAspectJAutoProxy
8+ class  AspectJConfig 
Original file line number Diff line number Diff line change 1+ package  com.example.kotlin.service 
2+ 
3+ interface  TestService  {
4+ 
5+     fun  testAop (): String 
6+     fun  test (): String 
7+ }
Original file line number Diff line number Diff line change 1+ package  com.example.kotlin.service 
2+ 
3+ import  org.slf4j.LoggerFactory 
4+ import  org.springframework.stereotype.Service 
5+ 
6+ @Service
7+ class  TestServiceImpl  : TestService  {
8+ 
9+     private  val  logger =  LoggerFactory .getLogger(TestServiceImpl ::class .java)
10+ 
11+     override  fun  test (): String  {
12+         val  msg =  " Hello, Spring Boot With Kotlin No AOP" 
13+         logger.info(msg)
14+         return  msg
15+     }
16+ 
17+     override  fun  testAop (): String  {
18+         val  msg =  " Hello, Spring Boot With Kotlin AOP" 
19+         logger.info(msg)
20+         return  msg
21+     }
22+ }
Original file line number Diff line number Diff line change 1+ package  com.example.kotlin.web 
2+ 
3+ import  com.example.kotlin.service.TestService 
4+ import  org.springframework.beans.factory.annotation.Autowired 
5+ import  org.springframework.web.bind.annotation.GetMapping 
6+ import  org.springframework.web.bind.annotation.RestController 
7+ 
8+ @RestController
9+ class  TestController  {
10+ 
11+     @Autowired
12+     private  lateinit  var  service:  TestService 
13+ 
14+     @GetMapping(value =  [" /noAop" 
15+     fun  noAop (): String  {
16+         return  service.test()
17+     }
18+ 
19+     @GetMapping(value =  [" /aop" 
20+     fun  aop (): String  {
21+         return  service.testAop()
22+     }
23+ }
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments