Spring38 SpringFrameWork CoreTechnition_section5_13부 스프링 AOP : 프록시 기반 AOP ※ 다이나믹한 방법은 이론 설명만 있음. AOP : AOP 는 oop를 보안하는 수단으로 흩어진 Aspect를 모듈화하는 프로그래밍 기법 이다. proxy : 네트워크쪽에 사용하는 용어로 중계자, 대리자 라는 뜻을 가지고 보안상 직접 통신하지 않고 두 점사이에서 대리인의 역할을 수행하는 기능이다. -점 - proxy - 점 -> 이렇게 생각할 수 있고 또한 - proxy(점) -> 점 으로 생각할 수 있다.(proxy로 감싸있는 점 ) AOP의 특징 프록시 기반의 AOP 구현체이다. 스프링 빈!에만 AOP를 적용할 수 있다. 모든 AOP의 기능을 적용하는 것이 목적이 아닌 스프링 IoC와 연동하여 엔터프라이즈 애플리케이션에 가장 흔한 문제에 대해 해결책을 제공하는 것.. Spring/Spring_CoreTechnologies 2020. 11. 24. SpringFrameWork CoreTechnition_section5_12부 AOP AOP의 개념 Aspect-Oriented Programming의 약자이다. 흩어진 Aspect들을 모아서 모듈화 하는 기법이다. AOP는 OOP를 보완하는 수단이다.(대체하는 것이 아니고 OOP를 좀 더 잘하게 끔 하는 것이다) 여러가지의 구현체들이 존재하지만 AspectJ와 SpringAop가 대표적이다. 관심사란 => 비슷한 코드들을 의미한다. ex) 필드 또는 메소드 등과 같은 것들 이다. Transacion , Logging 사용. 각 클래스에 중복되는 부분이 있으면! 중복을 제거하기 위해 AOP를 적용하게 된다. class A,B,C 에 중복된 관심사들을 깔끔하게 정리한다. AOP 의 주용 개념(용어정리) Aspect와 target Aspect : 해야할 일(관심사)과 어디에(클래스A?.. Spring/Spring_CoreTechnologies 2020. 11. 24. SpringFrameWork CoreTechnition_section4_11부 SpEL( Spring Expression Language) ※메서드 호출과 기본 문자열 템플릿 기능 SpEL 런타임 시 객체 그래프를 조회하고 조각하는 기능을 제공. Unified EL( $ { }> ...} 비슷하지만, 메소드 호출과 문자열 템플릿 기능 제공. 모든 스프링 프로젝트 전반에 걸쳐 사용할 EL로 만들어졌습니다. spring 3.0 지원. 문법 #("표현식") $("프로퍼티") 표현식안에 프로퍼티 사용 가능하지만 프로퍼티 안에 표현식 x. 더 많은 내용은 reference 참고. -주석 참조- JavaBean 프로퍼티를 호출하는 예제로 다음에서 보듯이 문자열 프로퍼티 'Bytes'를 호출할 수 있습니다. ex) ExpressionParser parser = new SpelExpression.. Spring/Spring_CoreTechnologies 2020. 11. 20. SpringFrameWork CoreTechnition_section1_7부 ApplicationEventPublisher ※주석을 꼭 참고 해 주시기 바랍니다. 이벤트 프로그래밍에 필요한 인터페이스 제공. (옵저버 패턴 구현체) ApplicationContext extends ApplicationEventPublisher 이벤트 만들기 4.2 스프링 부터 상속받지 않아도 이벤트 사용 가능. 이벤트 방법 ApplicationEventPublisher.publishEvent(); 이번에는 또다른 handler 를 구현 해보고 실행을 하게 되면 어떤것이 먼저 실행 될지는 모르지만 둘 다 실행되는 것을 보시수 있습니다. 추가적으로 각 매소드 handle 안에 System.out.println(Thread.currentThread().toString()); 을 넣고 출력 결과를 보시면 .. Spring/Spring_CoreTechnologies 2020. 11. 19. SpringFrameWork CoreTechnition_section1_6부 MessageSource 국제화 i18n 기능을 제공하는 인터페이스. 즉, 메시지 다국화 방법입니다. 예를 들어 각 나라별 언어에 따른 메시지를 각 웹에 지정되어있는 언어마다 다르게 보여줄 수 있습니다. 깔금하게 정리하자면 MessageSource를 통해 영어, 한국어, 중국어 등 다양한 언어로 웹 서비스를 제공할 수 있습니다. ApplicationContext extends MessageSource - AppRunnser 를 만들고 @Component public class AppRunner implements ApplicationRunner { @Autowired MessageSource messageSource; // ApplicationContext ctx; @Override public void.. Spring/Spring_CoreTechnologies 2020. 11. 19. 이전 1 ··· 3 4 5 6 7 8 다음