728x90 전체 글380 [Spring] 프론트 컨트롤러 6 : 어댑터 추가 어댑터 추가 앞서 구현했던 버전에서 ControllerV4 어댑터를 만들고 FrontController 에 추가해보자. ControllerV4HandlerAdapter 앞에서 만든 ControllerV3HandlerAdapter 와 구조는 비슷하지만 어댑터 부분에 차이가 있다. public class ControllerV4HandlerAdapter implements MyHandlerAdapter { @Override public boolean supports(Object handler) { return (handler instanceof ControllerV4); } @Override public ModelView handle(HttpServletRequest request, HttpServletRes.. 2021. 10. 30. [Spring] 프론트 컨트롤러 5 : 어댑터 적용 어댑터 적용 어댑터 패턴을 적용해본다. 적용하는 이유는 사용자마다 V4 또는 V5 를 선택해서 사용하게 하려고 한다. 어댑터 패턴 예제 - https://vprog1215.tistory.com/261 어댑터를 적용한 구조 핸들러 매핑정보: 요청에 대한 정보를 담는다. 요청된 url 을 key 로 컨트롤러를 value 로 갖는다. 핸들러 어댑터 목록: 핸들러 매핑정보에서 가져온 컨트롤러를 처리할 어댑터를 담고 있는다. 핸들러 어댑터: 반환된 핸들러 어댑터에서 핸들러를 처리한다. MyHandler Adapter 어댑터를 구현하기 위한 인터페이스이다. supports: - 구현체가 해당 핸들러를 지원하는지 확인한다. handle: - 핸들러를 조회한뒤 public interface MyHandlerAdapte.. 2021. 10. 30. [Java] Generic Type Erasure Generic Generic Type erasure 를 알기전 Generic 개념을 알아야한다. Geneirc 을 쓰면 많은 이점을 가지지만 주의해야 될 사항이 있다. 바로 Generic Type erasure 이다. 2022.06.11 - [Language/Java] - [Java] Generic 기초 [Java] Generic 기초 Generic 제네릭에 대해 깊이 공부좀 해보자. 제네릭의 개념 제네릭의 타입 제네릭에서 경계와 제한 방법 제네릭 사용시 주의점 Generic 등장 배경 Generic 의 등장 배경은 컬렉션으로 부터 시작이 된다 vprog1215.tistory.com Generic Type Erasure 지네릭을 쓰게 되면 컴파일 시점에는 타입을 체크하지만, 런타임 환경에서는 타입을 체크.. 2021. 10. 29. [Design Pattern] Adapter Pattern Adapter pattern 어댑터 패턴은 호환성이 없는 인터페이스 때문에 동작할수 없는 클래스들이 함께 동작하게 해준다. 아래 그림을 보면 제공된 라이브러리가 호환이 안될경우 어댑터 패턴을 사용하면된다. Adapter pattern 구조 가장 널리 알려진 Adapter의 구조이다. Client: 실제 기능을 사용하는 주체 Target: Adapter pattern 예제 MathAdapter 를 인터페이스로 만든다. MathAdapterImpl 로 구현한뒤 Math 를 가져다 사용한다. 이렇게 하는 이유는 다음과 같다. - 제공 되는 Math 는 입출력 타입이 double 이다. - 하지만 입력을 float 을 사용해야 된다. 현재는 간단하지만 로직이 복잡해 지면 어댑터를 사용해야 될수 밖에 없다. Sp.. 2021. 10. 28. 이전 1 ··· 38 39 40 41 42 43 44 ··· 95 다음 728x90 반응형