공부한것들을 정리하는 블로그 입니다.
4-2. 관심분리(횡단관심) : LogAdvice를 Log4Advice로 교체, pointcut엘리먼트 사용, XML설정을 Annotation설정으로 교체 본문
4-2. 관심분리(횡단관심) : LogAdvice를 Log4Advice로 교체, pointcut엘리먼트 사용, XML설정을 Annotation설정으로 교체
호 두 2019. 6. 17. 14:06
이번 글에서는 LogAdvice를 Log4Advice로 교체해보도록 하겠습니다.
스프링 aop의 관심분리 덕분에,
횡단관심에 해당하는 log 파일 교체시에 핵심 관심인 BoardServiceImpl 등을 수정하지 않아도 됩니다.
1. applicationContext.xml에서 bean을 수정해준다 ( LogAdvice.java -> Log4Advice.java )
2. applicationContext.xml을 AOP의 pointcut 엘리먼트를 활용하는 방법으로 수정하여 보자 ( pointcut 엘리먼트 실습 )
3. AOP의 pointcut을 Spring에서 제공하는 annotation으로 작동하도록 수정해보자( XML설정 -> Annotation설정 )
1. applicationContext.xml에서 bean을 수정해준다 (LogAdvice -> Log4Advice)
테스트해보면 수정된 로그가 출력되는 것을 확인할 수 있다
스프링의 AOP는 클라이언트가 핵심관심에 해당하는 비즈니스 메소드를 호출할 때, 횡단관심에 해당하는 메소드를 적절하게 실행해줍니다.
이때, 핵심관심 메소드와 횡단관심 메소드 사이에서 소스상의 결합은 발생하지 않으며, 이것이 우리가 AOP를 사용하는 주된 목적입니다.
2. applicationContext.xml을 AOP의 pointcut을 활용하는 방법으로 수정하여 보자
3. AOP의 pointcut을 Spring에서 제공하는 annotation으로 작동하도록 수정해보자
실습파일을 업로드하고 글을 마무리하겠다
'(2019) 사이드 프로젝트 > BoardWeb(게시판-MVC1,MVC2,스프링MVC)' 카테고리의 다른 글
5-1. DAO클래스 구현 : JdbcDaoSupprot 클래스를 상속하는 방법, JdbcTemplate 클래스를 <bean> 등록하고, 의존성 주입으로 처리하는 방법 (0) | 2019.06.19 |
---|---|
5. 스프링 JDBC : JDBCUtil을 스프링JDBC로 교체, RowMapper 추가 (0) | 2019.06.19 |
4-4. 별첨) 프로젝트 첨부 (0) | 2019.06.19 |
4-3. 시스템로그를 로그파일(.log)로 자동저장하기: log4j (0) | 2019.06.18 |
4.1 oracle error 해결 : Socket read interrupted, Authentication lapse 0 ms. (0) | 2019.06.17 |
4. 스프링 AOP : log4j 설정 (0) | 2019.06.14 |
3-1. 비즈니스 컴포넌트 실습2 (0) | 2019.06.14 |
3. 비즈니스 컴포넌트 실습(Annotation + JDBC + maven) (2) | 2019.06.14 |