티스토리 뷰

JAVA

[#3] AOP

구글링쟁이 k9e4h 2016.03.18 20:29

 AOP

- target : advice 적용될 객체 (모듈)//core concern // 우리가 하던것

- advice : aspect 해야할 작업내용, 순수한 부가기능 자체 // cross cutting concern

=> core concern + cross cutting concern = (Dynamic) proxy

-weaving : advice, pointcut 조합하여 tartget 적용하는 과정 // wiring

-  joinpoint :  부가기능을 삽입하는 위치, advice 붙는곳, spring joinpoint tartget method이다.

      Spring AOP joinPoint method 제공한다 field get/set 메소드 통해, constructor singleton

     어디에 advice 적용할지에 대한 지점(메서드 호출, 필드값 변경 ), code advice 연결해주는 설정 정보

- pointcut : 부가기능이 삽입될 대상 지점, 특정 method에만 advice 붙이고 싶을때, advice 붙는 rule

      joinpoint 부분집합. 실제로 advice 적용되는 joinpint/ 조건을 통해 선택된 joinpoint 일부

- aspect(관점, advisor) : 특정 부가 기능이 어디에 삽입 되어야 할지 지정/ advice+pintcut

- proxy : advice target 적용했을때 생성되는 객체 ( target+advice), 실제 구현자가 원했던 공통모듈과 모듈의 원래 기능을 모두 수행할 있는 객체

실제 서비스를 담당하는 서비스 모듈(특정 서버, 특정 클래스 또는 메소드)을 대신하여 자신이 서비스하는 것 처럼 보이도록 하는 개념

 

-------------------------------------------------------------------------------------------------------------

 

<<더 알아 볼 것>>

 

AOP OOP

Target object??

Advice??

우리가 proxy 만든 것이아니라 자동으로 -> Dynamic proxy

Weaving dynamic proxy 돈다

04 project target object

Advice.java에서 getMessage 호출하기전에 advice 붙었다





--------------------------------------------------


Ioc : inversion of control

명령어 순서에 상관없이 사건에 따라 호출됨

ex javascript의 eventListener 

위치에 상관없이 클릭하면 호출당하는거지 내가호출하는 것이아니라


DI : Dependency Injection

사회에 나가면 나라에서 너 집필요하지? 집가져 이런느 것ㅋㅋㅋㅋ

이게아니라 집필요하면 내가사야지..

내가 지금 교육수당 받는 것도 DI 이지 않을까ㅋㅋㅋㅋㅋ

IoC의 한사례가 DI 


IoC container

Spring의 DI를 관리하는 것

 

 

-----------------------------------------------------------------------

http://vandbt.tistory.com/44

http://www.zdnet.co.kr/news/news_view.asp?artice_id=00000039147106

'JAVA' 카테고리의 다른 글

[java02] Thread  (0) 2016.03.23
[java01] Server/Network 기초  (0) 2016.03.23
[#4] Association(HasA) & Dependency 관계  (0) 2016.03.22
[#3] AOP  (0) 2016.03.18
[#2]용어정리2  (0) 2016.03.18
OOP 관련 개념  (0) 2016.03.16
댓글
댓글쓰기 폼