전체보기

본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 스프링 MVC - 전체 구조 이전 포스팅에서 직접 만들어본 MVC 프레임워크의 구조와 스프링 MVC 구조를 비교해보자. 직접 만든 MVC 프레임워크 구조 스프링 MVC 구조 대부분의 구조가 거의 똑같지만, 다음과 같이 명칭이 조금 달라졌다. 직접 만든 프레임 워크 ➡ 스프링 MVC 비교 FrontController ➡ DispatcherServlet handlerMappingMap ➡ HandlerMapping MyHandlerAdapter ➡ HandlerAdapter ModelView ➡ ModleAndView viewResolver ➡ ViewResolver MyView ➡ View DispatcherServle..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 이전 포스팅에서 MVC 패턴의 한계점인 공통 처리가 힘들다는 부분을 해결하기 위해 프론트 컨트롤러 패턴을 사용한다고 했다. 프론트 컨틀롤러 패턴이 무엇인지 알아보고 코드에 적용해보자. 프론트 컨트롤러 패턴 프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받는다. 프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출해주는 역할을 한다. 프론트 컨트롤러를 통해 요청을 받는 입구를 하나로 만들어 공통 처리가 가능하다. 여러 컨트롤러에 산재되있던 공통 처리 코드를 프론트 컨트롤러 하나로 모을 수 있다. 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 된다. 스프링 웹 MVC의 DispatcherServl..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 간단한 회원 웹 애플리케이션 예제에 대해 우선 서블릿으로 만들어 본 뒤, 서블릿을 사용했을 때 불편한 점을 JSP로 개선해보고, JSP를 사용했을 때 불편한 점을 MVC 패턴으로 개선해보며 어떻게 발전해나갔는지 알아보자. 회원관리 웹 애플리케이션 만들기 요구사항 회원 정보(도메인) 이름 : username 나이 : age 기능 회원 저장 기능 회원 목록 조회 기능 뼈대 코드 👉🏻 회원 도메인 모델 더보기 📁 domain/member/Member @Getter @Setter public class Member { private Long id; // 식별자 private String username; // 이름 priva..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 📢 본 포스팅에 앞서 예제를 위한 프로젝트를 생성하자. 더보기 📌 스프링 프로젝트 생성 스프링 부트 스타터를 이용해서 스프링 프로젝트를 생성해주도록 하자. 프로젝트 선택 Project: Gradle Project Language: Java Spring Boot: 2.6.x (정식버전 중 가장 최신 버전 선택) Project Metadata Group: hello Artifact: servlet Name: servlet Package name: hello.servlet Packaging: War (JSP를 실행하기 위해 선택) Java: 11 Dependencies Spring Web Lombok 📌 실행 확인 인텔리제..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 자바 웹 기술 역사 과거 서블릿 (1997) HTML 생성이 어려움 JSP (1999) HTML 생성은 편리 비즈니스 로직까지 너무 많은 역할을 담당 서블릿, JSP 조합 MVC 패턴 사용 모델, 뷰, 컨트롤러로 역할을 나누어 개발 MVC 프레임워크의 춘추 전국 시대 (2000년 초 ~ 2010년 초) MVC 패턴 자동화 복잡한 웹 기술을 편리하게 사용할 수 있는 다양한 기능을 지원 종류 : 스트럿츠, 웹워크, 스프링 MVC(과거 버전) 현재 애노테이션 기반의 스프링 MVC 등장 예) @Controller MVC 프레임워크의 춘추 전국 시대가 마무리 됨 스프링 부트 스프링 부트는 서버를 내장한다. 과거에는 서버에 WA..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. HTTP클라이언트가 서버로 데이터를 전달할때, 서버가 클라이언트에 응답을 보낼때 모두 HTTP 프로토콜을 기반으로 동작한다.웹은 모든 것이 HTTP 프로토콜을 기반으로 거의 모든 형태의 데이터 전송이 가능하다.HTML, TEXT이미지, 음성, 영상, 파일JSON, XML (API)  서버웹 서버HTTP 기반으로 동작하는 서버정적 리소스를 제공, 기타 부가 기능정적 리소스 : 정적(파일) HTML, CSS, JS, 이미지, 영상정적인 파일을 주고 받는다.예 : NGINX, APACHE 웹 어플리케이션 서버 (WAS)Web Application ServerHTTP 기반으로 동작하는 서버웹 서버의 기능 포함 + (정적 리소..
본 포스팅은 [인프런] 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 바탕으로 공부하고 정리한 글입니다. HTTP 헤더 구조 header-field = field-name ":" OWS field-value OWS (OWS:띄어쓰기) field-name은 대소문자를 구분하지 않는다. 용도 HTTP 전송에 필요한 모든 부가정보가 들어있다. 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트(브라우저) 정보, 서버 어플리케이션 정보, 캐시 관리 정보 ... 표준 헤더가 너무 많다. 필요시 임의의 헤더를 추가할 수 있다. helloworld: hihi 분류 과거 (RFC2616) General 헤더 : 메세지 전체에 적용되는 정보 Request 헤더 : 요청 정보 Response..
본 포스팅은 [인프런] 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 바탕으로 공부하고 정리한 글입니다. 상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx (Informational) : 요청이 수신되어 처리중 → 거의 사용 X 2xx (Successful) : 요청 정상 처리 3xx (Redirection) : 요청을 완료하려면 추가 행동이 필요 4xx (Client Error) : 클라이언트 오류, 잘못된 문법 등으로 서버가 요청을 수행할 수 없음 5xx (Server Error) : 서버 오류, 서버가 정상 요청을 처리하지 못함 클라이언트가 모르는 상태코드를 서버가 반환한다면? 클라이언트는 상위 상태코드로 해석해서 처리한다. 따라서 미래에 새로운 상태 코드가 추가되어도..
an2z
'분류 전체보기' 카테고리의 글 목록 (15 Page)