- Inversion of Control
- 개념 : 객체 간의 의존관계를 객체 내부에 선언 또는 정의하지 않고, 외부의 조립기를 이용하여 의존 관계를 설명<?xml:namespace prefix = o />
- 장점 : 테스트와 코드 수정이 용이하다.
Ex] public class WriteArticleServiceImpl { |
- AOP
- 기능을 핵심 비즈니스 로직과 공통 모듈로 구분하고, 핵심 로직에 영향을 미치지 않고 이 사이에 공통 모듈을 효과적으로 잘 끼워 넣도록 하는 개발 방법이다.
Ex] loggingaspect.java import org.apache.commons.logging.Log; public class LoggingAspect { protected final Log logger = LogFactory.getLog(getClass()); // pointcut method 호출 전에 실행 시킬 로깅 함수
applicationContext.xml |
- AOP 관련 용어
- advice : 언제 어떤 기능을 적용할 지에 대한 정의
- joinpoint : 공통 기능 적용 가능 지점 (spring에서는 메서드 호출만이 가능합니다.)
- pointcut : joinpoint 중에 실제로 적용할 지점
- weaving : 핵심 로직에 공통 로직을 삽입하는
바로보기가 지원되지 않는 파일입니다.
클릭하여 팝업창으로 플레이 해보세요.
것
- aspect : 여러 객체에 공통으로 적용되는 공통 관심 사항
- AOP설정 정보
<aop:config>
<aop:aspect> : aspect를 설정
<aop:before> : method 실행 전
<aop:after-returning> : method 정상 실행 후
<aop:after-throwing> : method 예외 발생 시
<aop:after> : method 실행 후 (예외 발생 예부 상관 없음)
<aop:around> : 모든 시점 적용 가능
<aop:pointcut> : pointcut 설정
- pointcut 설정은 Aspect의 표현식에 따릅니다. Framework과
- execution( 수식어패턴 리턴타입패턴 패키지패턴.메소드이름패턴(파라미터패턴)
'웹 개발' 카테고리의 다른 글
[spring] 생성자 혼동 피하기 (0) | 2019.08.11 |
---|---|
[spring] 같은 팩토리 내부의 빈 주입하기 (0) | 2019.08.11 |
Spring Framework 핵심개념 [1. Injection of Control] (0) | 2019.08.11 |
Spring 설정 파일을 이용한 의존 관계 설정 (0) | 2019.08.11 |
jqgrid get selected row 선택된 줄의 정보 가져오기 (0) | 2019.08.07 |