본문 바로가기
728x90

전체 글111

인프런 MVC 1 강의 정리 #2 1 . 프로젝트 생성 서블릿을 이용한 스프링 부트 프로젝트를 생성해보자. start.spring.io에서 Gradle, WAR로 설정하여 Generate한다. 파일을 열어서 롬복을 설치하고, Settings -> Annotation Processors의 Enable annotation processing을 체크한다. 기본 설정을 마친 후 기본 메인 클래스를 실행해보고 동작하는지 확인하기 위해 http://localhost:8080을 들어가본다. 아래와 같은 Error page가 나오면 정상 작동하는 것이다. 2 . Hello 서블릿 스프링 부트는 톰캣 서버를 내장하고 있기 때문에, 톰캣 서버 설치 없이 편리하게 서블릿 코드를 실행할 수 있다. 본격적으로 스프링 부트 서블릿 환경을 구성해보자. 1) 서블릿.. 2023. 12. 27.
인프런 MVC 1 강의 정리 #1 1 . 웹 서버, 웹 애플리케이션 서버 웹에서 모든 형태의 데이터는 HTTP 형식으로 전송된다. 클라이언트와 서버가 서로에게 데이터를 전송하거나, 서버 간에 데이터를 주고 받을 때도 HTTP를 사용한다. 1) 웹 서버 (Web Server) HTTP 기반으로 동작 정적 리소스 제공, 기타 부가기능 ex) 정적 HTML, CSS, JS, 이미지, 영상 2) 웹 애플리케이션 서버 (WAS - Web Application Server) HTTP 기반으로 동작 웹 서버 기능 포함 + (정적 리소스 제공 기능) 프로그램 코드를 실행해서 애플리케이션 로직 수행 ex) 동적 HTML, HTTP API, 톰캣(Tomcat) Jetty - 웹 서버, 웹 애플리케이션 서버(WAS) 차이점 웹 서버는 정적 리소스(파일), .. 2023. 12. 27.
인프런 HTTP 강의 정리 #8 1 . 캐시 기본 동작 1) 캐시가 없을 때 브라우저에서 GET /star.jpg 첫번째 요청을 보내면, 서버는 HTTP 헤더(0.1M) + HTTP 바디=star.jpg 이미지(1.0M)를 담아 응답을 보낸다. 그 후 브라우저에 서버로부터 응답받은 이미지가 표시된다. 브라우저에서 GET /star.jpg 두번째 요청을 보내면, 서버는 HTTP 헤더(0.1M) + HTTP 바디=star.jpg 이미지(1.0M)를 담아 응답을 보낸다. 이와 같은 과정을 반복하면서 캐시가 없으면 데이터가 변경되지 않아도 계속 네트워크를 통해 데이터를 다운로드 받아야 한다. 그렇지만 이 경우 인터넷 네트워크가 매우 느리고 비싸다는 단점이 있다. 2) 캐시 적용 브라우저에서 GET /star.jpg 첫번째 요청을 보내면, 서버.. 2023. 12. 23.
인프런 HTTP 강의 정리 #7 1 . HTTP 헤더 개요 1) HTTP 헤더 헤더는 HTTP 전송에 필요한 모든 부가 정보를 담고 있다 ex) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 등 2) HTTP BODY RFC7230~7235 등장 엔티티(Entity) -> 표현(Representation) 표현 (요청이나 응답에서 전달할 실제 데이터) = 표현 헤더 + 표현 데이터 메시지 본문(message body)를 통해 표현 데이터 전달 표현 헤더는 표현 데이터를 해석할 수 있는 정보 제공 2 . 표현 Content-Type : 표현 데이터의 형식 Content-Encoding : 표현 데이터의 압축 방식 Content-Language : 표현 데이터의 자연 언어 Conte.. 2023. 12. 23.
728x90