jsp/servlet도 아직 익숙하지 않은데 , spring 들어가고 계속 새로운 것을 습득하려니
머리가 아푸넹, 어쩌겠어 익숙해질때까지 해야지 (냉정ㅋ)
순서대로 예제 프로젝트 따라친 코드를 다시 씹어보쟈구~?
<pom.xml> 파일에 아래 코드를 붙여넣기 (의존 설정)
<!-- AOP -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
</dependency>
<aop파일 만들깅>
package com.javalec.ex;
import org.aspectj.lang.ProceedingJoinPoint;
public class LogAop {
public Object loggerAop(ProceedingJoinPoint joinpoint) throws Throwable {
String signatureStr = joinpoint.getSignature().toShortString();
System.out.println( signatureStr + " is start.");
long st = System.currentTimeMillis();
try {
Object obj = joinpoint.proceed();
return obj;
} finally {
long et = System.currentTimeMillis();
System.out.println( signatureStr + " is finished.");
System.out.println( signatureStr + " 경과시간 : " + (et - st));
}
}
}
<applicationCTX.xml 전체 부분>
<?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-3.2.xsd">
<bean id="logAop" class="com.javalec.ex.LogAop" />
<aop:config>
<aop:aspect id="logger" ref="logAop">
<aop:pointcut id="publicM" expression="within(com.javalec.ex.*)" />
<aop:around pointcut-ref="publicM" method="loggerAop" />
</aop:aspect>
</aop:config>
<bean id="student" class="com.javalec.ex.Student" >
<property name="name" value="홍길동" />
<property name="age" value="10" />
<property name="gradeNum" value="3" />
<property name="classNum" value="5" />
</bean>
<bean id="worker" class="com.javalec.ex.Worker" >
<property name="name" value="홍길순" />
<property name="age" value="35" />
<property name="job" value="개발자" />
</bean>
</beans>
* nameplace 가서 aop 체크해주기!!!
* 아래 부분이 xml 파일 핵심 내용!!
<bean id="logAop" class="com.javalec.ex.LogAop" />
먼저 bean을 만들어주기
<!-- aop를 실행하겠다. -->
<aop:config>
<aop:aspect id="logger" ref="logAop">
<!-- 핵심 코드는 expression="com.javlect.ex 아래에 있는 모든 파일 "에 적용하겠다. -->
<aop:pointcut id="publicM" expression="within(com.javalec.ex.*)" />
<!-- loggerAop 메소드를 pointcut-ref에 적용해주겠다. -->
<aop:around pointcut-ref="publicM" method="loggerAop" />
</aop:aspect>
</aop:config>
백앤드 쪽을 공부할 수록 느끼는게,
java 가 jonna 중요하다는 것
따로 1시간씩 java 시간을 내서 복습을 해나가야징~~ 👀
코딩.슈.슈슉.! 덤벼라!
'✍ 따뜻한 개발 공부' 카테고리의 다른 글
[Ajax] 서버 외의 외부에서 데이터 가져오기(java script) (0) | 2022.08.09 |
---|---|
[프론트앤드] 학습 환경 구축하기 / 개발 공부 현타 (0) | 2022.08.08 |
[Spring] Environment객체 사용하지 않고 외부 프로퍼티 값 가져오기 / xml파일을 이용하는 방식과 java파일을 이용하는 방식 (0) | 2022.08.04 |
[Spring] DI의 장점이 무엇일까? / 인터페이스의 장점 (0) | 2022.08.03 |
[JS] 자바 스크립트 연산자엔 어떤 게 있을까? / js의 비교 연산자 == 와 ===의 차이 (0) | 2022.07.31 |
댓글