반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- cudnn
- broscoding
- tensorflow
- discrete_scatter
- web 사진
- 데이터전문기관
- inorder
- CES 2O21 참가
- 결합전문기관
- 대이터
- 자료구조
- web 개발
- classification
- 웹 용어
- pycharm
- mglearn
- html
- paragraph
- KNeighborsClassifier
- Keras
- 재귀함수
- 머신러닝
- java역사
- web
- C언어
- CES 2O21 참여
- postorder
- vscode
- web 용어
- bccard
Archives
- Today
- Total
bro's coding
Spring.AOP.around 본문
반응형
package org.kosta.aop;
import org.aspectj.lang.ProceedingJoinPoint;
/**
* 횡단 관심사항을 정의한 클래스<br>
* around advice를 테스트 한다<br>
* around advice는 4가지 advice를 모두 적용할 수 있는 advice다.<br>
* (before, after, after-returning, after-throwing)<br>
*
* @author broth
*
*/
public class AroundLoggingService {
public Object logging(ProceedingJoinPoint point) throws Throwable {
// <before>
System.out.println("***AOP 적용 before advice***");
// </before>
// 실제 core 메서드가 전달받은 매개변수의 데이터를 확인해본다
Object params[] = point.getArgs();
for (int i = 0; i < params.length; i++) {
System.out.println("AOP에서 확인한 매개변수정보:*:" + params[i]);
}
// <now>
// proceed(): 실제 AOP 적용 대상 메서드를 실행
Object retValue = point.proceed();
// </now>
// <after>
System.out.println("***AOP 적용 after advice***");
// </after>
return retValue;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd">
<bean id="personService" class="org.kosta.model.PersonService"></bean>
<bean id="productService" class="org.kosta.model.ProductService"></bean>
<!-- 횡단 관심사를 정의한 클래스 -->
<bean id="aroundLogging"
class="org.kosta.aop.AroundLoggingService"></bean>
<aop:config>
<aop:aspect ref="aroundLogging">
<aop:pointcut expression="within(org.kosta.model.*)"
id="pt" />
<aop:around method="logging" pointcut-ref="pt" />
</aop:aspect>
</aop:config>
</beans>
반응형
'[IT] > Spring' 카테고리의 다른 글
Spring.MyBatis.table column 명과 VO의 instance변수 명이 다른 경우 (0) | 2021.05.28 |
---|---|
Spring.MyBatis.DB.Map (0) | 2021.05.27 |
Spring.MyBatis Framework (0) | 2021.05.27 |
Spring.MyBatis.DB사용 (0) | 2021.05.26 |
log4j (0) | 2021.05.24 |
Spring.AOP(Aspect Oriented Programming) (0) | 2021.05.21 |
Spring.IOC.판서 (0) | 2021.05.21 |
spring.Maven (0) | 2021.05.20 |
Comments