Inversion of Control Containers and the Dependency Injection pattern
Inversion of Control과 Dependency Injection에 관한 마틴 파울러의 글
Archive for the ‘ Framework ’ Category
Inversion of Control과 Dependency Injection에 관한 마틴 파울러의 글
애스펙트 지향 프로그래밍은 소프트웨어 시스템 내부의 관심사들을 서로 분리(separation of concerns) 하는 기술이라고 설명할 수 있다. 시스템은 보통 특정한 기능을 책임지는 여러 개의 컴포넌트로 구성된다. 그러나 각 컴포넌트는 대체로 본연의 특정한 기능 외에 로깅이나 트랜잭션 관리, 보안 등의 시스템 서비스도 수행해야 하는 경우가 많다. 이러한 시스템 서비스는 시스템의 여러 컴포넌트에 관련되는 경향이 있기 때문에 횡단관심사라고 한다.
이러한 관심사가 여러 컴포넌트에 퍼지게 되면 코드가 다음 두 가지 차원에서 복잡해진다.
AOP는 시스템 서비스를 모듈화해서 컴포넌트에 선언적으로 적용할 수 있게 해준다.
AOP를 이용하면 시스템 서비스에 대해서는 전혀 알지 못하면서 응집도가 높고 본연의 관심사에 집중하는 컴포넌트를 만들 수 있다. 다시 말해 애스펙트는 POJO를 말 그대로 평범하게 해준다.
-Spring In Action
입력 폼의 값들을 post 로 넘길 때 한글 깨짐 현상..
web.xml 에 아래와 같이 Spring 에서 제공하는 filter를 설정해준다.
<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>euc-kr</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>