본문 바로가기
카테고리 없음

springDI(IOC), spring AOP

by 댓츠굿 2013. 4. 15.

springDI(IOC) why? 시스템 결합도를 낮추기 위해

 -> 유지보수성 향상

how? spring container 에서 필요한 객체를 주입받는다.

 (interface 타입으로 주로 받는다.)

 ex) Servlet의 service(ServletRequest request, ServletResponse response)

 web container 로부터 개별 객체를 주입받는다.

  WAS의 종류에 관계없이 유연한 or 독립적인 개발이 가능하다.

 

spring AOP why? 시스템은 핵심관심사항(core)과 공통관심사항(common)으로 구분될 수 있다.

  기존 OOP 방식은 아무리 좋은 component 를 활용하더라도

  소스코드 변경 or 추가와 같은 중복 작업은 불가피하다.

  하지만 AOP 에서는 공통관심사항을 한 곳에서 정의하고

  적용대상(pointcut)적용시점(advice) 를 명시하여 

  중복된 작업없이 효율적으로 개발하고 유지보수 할 수 있다.

how? 

공통관심사항을 정의한 bean

적용대상지정(pointcut : within(), execution(), bean())

적용시점지정(advice : before, after-returning, after-throwing, after,around)

반응형