Java Web Programming
-
webstudy26-mvc-front-controller-member-CheckLoginInterceptorJava Web Programming 2022. 10. 17. 22:57
checkLoginInterceptor : Front에서 인증체크 * 현 시스템에서 인증이 필요없는 서비스 컨트롤러 목록을 정의한다 * 대체로 인증 기반은 인증이 필요없는 것이 별로 없음. ex) 첫화면 / list / 회원가입 / 로그인 ... * 인증이 필요한 서비스컨트롤러에 대해 인증 체크해서 * 인증 상태이면 true (: 진행가능) 를 FrontControllerServlet으로 반환 * 비인증 상태이면 false 를 반환한다 ex) 인증이 필요한 상황에서 해당 사용자가 비인증 상태이면 로그인 폼 페이지로 이동 - commit으로 시작하는 이용자는 인증 제외 - 직접 경로 전달 - 공개되는 내용은 public으로 명명하기 - 이름의 규칙을 정할 수 있다 예제 : registerMember * V..
-
webstudy25-mvc-front-controller-member-2 (+ Login/Logout/Update)Java Web Programming 2022. 10. 17. 22:31
UML : Unified Modeling Language / 객체 지향 분석 설계시 사용하는 표기 언어 분석 -> UseCase Diagram 설계 -> Class Diagram Controller - 클라이언트의 요청을 실제로 처리할 컨트롤러 객체를 캡슐화 하는 인터페이스 - 사용하는 측 ( HandlerMapping 과 FrontControllerServlet ) 에서는 개별 컨트롤러 구현체를 보지 않고 현 인터페이스를 이용하면 된다 HandlerMapping - 생성 컨트롤러 구현체 생성을 전담하는 Factory 클래스 (추후 디자인패턴으로 확장될 수 있음 ) - HandlerMapping은 시스템 상에서 하나만 존재하여 공유해 사용하도록 Singleton Design Pattern을 적용한다 ( ..
-
webstudy25-mvc-front-controller-memberJava Web Programming 2022. 10. 13. 22:10
** Refactoring Ver 7 ** 실행 과정 index를 실행하면 그에 맞는 서블릿으로 경로가 이동되고, 이후 하나의 진입점인 doDispatch가 실행된다. index에는 다양한 form이 있어서무엇을 실행해야하는지 알아야 하고, 그에 맞는 서비스("아이디" 를 입력해 검색 버튼을 누르면 그 아이디에 맞는 회원을 검색하는 서비스, 주소 버튼을 누르면 주소에 맞는 회원을 검색하는 서비스)를 처리해야 한다. 이를 위해 어떠한 서비스를 실행해야하는지 조건문으로 처리해야하는데, 코드가 길어지기 때문에 생성된 것이 Controller interface 이다. 이 인터페이스를 implements하는 다양한 클래스를 생성하고, 그 클래스 내부는 각자 서비스에 맞게 메소드(handlerequest)로 구현되..
-
-
-
-
webstudy19~20-mvc-front-controller-pattern-ver1~4Java Web Programming 2022. 10. 12. 01:20
Front Controller Design Pattern : 모든 클라이언트의 요청을 하나의 진입점으로 통합하여 처리하는 설계 패턴 ex) 호텔 프론트의 역할 -> 모든 호탤 투숙객들이 프론트에서 문의사항을 문의함. 웹 어플리케이션 서비스의 공통 정책을 일관성 있고 효과적으로 처리할 수 있다 -> 인코딩, 인증 (보안 관련), 예외처리, 데이터 수집 등 * single tone : 시스템당 하나의 특정 클래스의 객체를 생성, 이를 공유해서 사용 * mvc : m, v, c 로 나누어 요청과 모델을 제어해서 response를 전달 FrontController 적용 전 Web MVC 구조 => 공통 정책을 펼치기 어려움 FrontController 적용 후 Web MVC 구조 Version 1 hidden ..
-