목차 프론트 컨트롤러 패턴 소개 프론트 컨트롤러 도입 - v1 View 분리 - v2 Model 추가 - v3 단순하고 실용적인 컨트롤러 - v4 유연한 컨트롤러 - v5 정리 1. 프론트 컨트롤러 패턴 소개 각 클라이언트들은 Controller A, B, C에 대해 각각 호출한다. 공통 코드들은 별도로 처리되어 있지 않고 각 Controller에 포함되어 있다. 프론트 컨트롤러를 도입하게 되면, 각 클라이언트들은 Front Controller에 요청을 보내고, Front
목차 회원 관리 웹 애플리케이션 요구사항 서블릿으로 회원 관리 웹 애플리케이션 만들기 JSP로 회원 관리 웹 애플리케이션 만들기 MVC패턴 - 개요 MVC패턴 - 적용 MVC패턴 - 한계 4. MVC패턴 - 개요 너무 많은 역할 하나의 서블릿이나 JSP만으로 비즈니스 로직과 뷰 렌더링까지 모두 처리하게 되면, 너무 많은 역할을 하게되고, 결과적으로 유지보수가 어려워진다. 비즈니스 로직을 호출하는 부분에 변경이 발생해도 해당 코드를 손대야 하고, UI를 변경할 일이 있어도 비즈니스 로직이 함께 있는 파일을 수정해야 한다. 변경의 라이프 사이클 사실 이게 정말 중요한데, 진짜 문제는 둘 사이에 변경의 라이프 사이클이 다르다는 점이다. 예를 들어서 UI를 일부 수정하는 일과 비즈니스 로직을 수정하는 일은 각각 다르게 발생할 가능성이 매우 높고 대부분 서로에게 영향을 주지 않는다. 이렇게 변경의 라이프 사이클이 다른
목차 회원 관리 웹 애플리케이션 요구사항 서블릿으로 회원 관리 웹 애플리케이션 만들기 JSP로 회원 관리 웹 애플리케이션 만들기 MVC패턴 - 개요 MVC패턴 - 적용 MVC패턴 - 한계 1. 회원 관리 웹 애플리케이션 요구사항 요번에 만드는 웹 애플리케이션은 간단하다. 서블릿과 jsp의 사용방법을 간단히 알아보고 어떤 식으로 웹 개발이 진화되었는지 알아보는 시간이다. 회원 정보 이름: username 나이: age 기능 요구사항 회원 저장 회원 목록 조회 가장 먼저 회원 도메인 모델과 레파지토리를 작성해보자 회원 도메인 모델 회원 레파지토리 간단한 메모리 레파지토리를 만들었다. > public static MemberRepository getInstance() { return instance; } 해당 레파지토리 생성자를 private로 만들었기 때문에 다른 클래스에서 레파지토리
오늘은 자바 웹 기술의 기초가 되는 Servlet과 Jsp에 대해 공부한 것에 대해 복습을 해보겠다. Servlet Servlet 발전과정 인터넷이 발달 되기 전에는 대부분의 웹 페이지가 정적인 페이지로 이루어져 있었다. 데이터간의 통신이 활발하지 않고 페이지를 들어가 다른페이지를 넘어가면 모두가 같은 화면을 보는 환경이었다. --> 클라이언트가 웹 페이지를 요청하면 Web Server( 예시: NGINX, APACHE )으로부터 정적 웹 페이지(또는 사진, 영상)을 받아 클라이언트에게 보여준다. 시간이 지나 인터넷이 발전해 가며, 사람들은 본인의 아이디 같은 자신이 필요한 데이터가 필요했던 것이다. 그럴려면 웹페이지에서 데이터를 주고 받아야 하는데, Servlet이 그 역할을 해주는 것이다. > Servlet이란, 웹 기반의 요청에 대한 동적인 처리가 가능한 하나의 클래스이다. 웹페이지에서의 데이터 간 전송 및 요청은 Http API로 이동이 된다. (