Let's Code/Server
-
서블릿의 응답과 요청: 헤더값 알아내기Let's Code/Server 2019. 8. 30. 23:26
WAS는 서블릿과 웹 브라우저를 이어주는 중간 관리자 같은 개념인데 서버의 과부하를 막기 위해 고안되었다고 한다. (아마도) JAVA는 *객체 지향* 즉, 객체를 생성하여 정보를 보관하는 프로그래밍 언어다. (객체 지향의 뜻이 뭘까 고민했는데 생각보다 간단했다) 만약 웹 브라우저가 처음에 요청을 넣으면, HttpServletRequest라는 객체가 생성된 후, 이를 서블릿에 전달한다. 이 때 보관되는 정보는, 1) 헤더정보 2) 파라미터 3) 쿠키 4) URI 5) URL 등이 있다. 반대로 서블릿이 응답하면, HttpServletResponse 객체를 생성한 후, 이를 웹 브라우저에 전달한다. 이 때 보관되는 정보는 1) content type 2) 응답코드 3) 응답 메시지 등이 있다. 헤더 정보를 ..
-
서블릿(Servlet)의 라이프싸이클(LifeCycle)Let's Code/Server 2019. 8. 30. 00:39
버전에 따른 Servlet 작성 방법 1. Servlet 3.0 spec 이상에서 사용하는 방법 web.xml 파일을 사용하지 않습니다. 자바 어노테이션(annotation)을 사용합니다. 실제 servlet tag 안에서 Servlet-name을 매치시키는 작업 서블릿을 생성할 때 URL mapping을 통해 조절 가능 2. Servlet 3.0 spec미만에서 사용하는 방법 servlet을 등록할 때 web.xml 파일에 등록합니다. Java annotation이 하는 일을 얘가 대신 함 (실행시킬 서블릿을 확인) 서블릿의 Life Cycle @WebServlet("/LifecycleServlet") public class LifecycleServlet extends HttpServlet { priv..
-
Eclipse에서 Tomcat 연동하기 / 서블릿 예제 2Let's Code/Server 2019. 8. 27. 17:40
Eclipse 2019-06에서 Tomcat 8.5.45 연동하기 매우 다사다난한 과정이었다. 1. Oracle에서 JDK 다운받기. 2. 이클립스 다운받고 EE Developer을 위한 패키지 다운받기. 3. Tomcat 다운받기. 2번부터 문제가 생겼는데, 2019년 6월부터 배포한 버전에서는 수업에 필요한 for Java EE Developers 패키지 대신 for Java Developers 밖에 서비스하고 있지 않았다. HTML, CSS 등의 Language와 Web Project를 서포트하고 있지 않았기에 추가적인 소프트웨어를 다운받아야 했다. Tomcat에서도 문제가 생겼는데, 이클립스가 지원하는 버전은 7.0까지였지만 내가 다운받은 건 8.5.45였다. 겨우겨우 구글링해가며 이클립스가 배포..
-
웹이 구현되는 과정Let's Code/Server 2019. 8. 25. 15:33
웹이 구현되는 과정을 간단하게 정리하겠습니다. 우선 인터넷이란 것이 무엇인지, 서버와 클라이언트가 무엇인지, 프론트엔드와 백엔드는 어떻게 구분되는지 정리한 후, 웹이 유저에게 전달되기까지의 작동 원리를 요약하겠습니다. 해당 내용은 네이버의 부스트코스를 정리 + 강의에서 제공되는 별도의 링크를 번역/정리했습니다. 1. Intro to HTTP 용어 정의 인터넷: 네트워크들의 네트워크라 할 수 있다. LAN보다 더 폭넓은 개념. HTTP: 서버와 클라이언트가 데이터를 주고 받기 위한 프로토콜로, 서로 통신하기 위해 사용하는 일정한 양식이다. URL: Uniform Resource Locator의 약자로, 1) 접근 포로토콜://IP 주소로 표현되기도 하며 2) 도메인 이름/문서 경로/문서 이름과 같이 도메인..