📍 전체 흐름 📍 Web Server(웹 서버) 역할 정적인 콘텐츠를 처리하고 클라이언트로부터의 HTTP 요청에 대한 응답을 처리한다. 주로 정적인 자원(HTML, 이미지, CSS 등)을 제공하며, 동적인 자원은 서블릿 컨테이너에게 전달하여 처리한다. 특징 Apache HTTP Server, Nginx 등이 대표적인 웹 서버이다. 정...
📍 클라이언트 요청부터 응답까지 두 개의 이미지와 실제 예시를 통해 클라이언트 요청부터 응답까지의 흐름을 알아보자. | 이미지1 | 이미지2 | 실제 | | ----- | ----- | ----- | | 클라이언트 | Client Browser | Chrome |
📍 프로그램 다운로드 > - WAS(웹 서버 + 서블릿 컨테이너) 역할을 할 1️⃣ Apache Tomcat과 서블릿을 생성하기 위한 2️⃣ Eclipse, 3️⃣ JDK를 설치해야 한다. Apache Tomcat Tomcat 9을 다운로드(Core > zip)한다. Eclipse Eclipse IDE for Enterprise Java an...
📍 Servlet > - HttpServlet 클래스를 상속받은 클래스이다. 클라이언트의 요청을 처리하고, 동적으로 웹 페이지를 생성하거나 데이터를 처리하여 응답을 생성한다. 📍 web.xml 파일의 Servlet 매핑 코드 흐름 > - 1️⃣ http://l
📍 MIME 타입 > - MIME(Multipurpose Internet Mail Extensions) 타입은 인터넷에서 다양한 종류의 데이터를 표현하고 전송하기 위한 표준 식별자이다. 서버가 클라이언트에게 전송되는 데이터의 종류를 명시적으로 지정하여, 클라이언트가
📍 Query String(쿼리 스트링) > - URL에 추가 정보를 전달하기 위한 일련의 매개변수로 구성된 문자열이다. GET 요청 시 일반적으로 쿼리 스트링을 사용하여 서버에 데이터를 전달한다. > 쿼리 스트링 형식 쿼리 스트링은 ?으로 시작한다. 매개변수는 key=value 형태로 구성된다. 매개변수 사이에는 &로 구분된다. 📍 GET 요청 ...
📍 POST 요청 보내는 법 > - HTML 태그를 통해 요청 태그로 요청 JS를 통해 요청 AJAX로 요청 위의 2가지 방법으로 POST 요청을 보내 아래의 Servlet을 실행시켜보자. 매핑된 주소와 전송할 데이터를 어디에 작성하는지 파악하기 위해 아래와 같이 표시한다. > - Servlet과 매핑된 주소: ⭐️ 전송할 데이터: 📕 ...
📍 GET vs. POST | | GET | POST | | ----- | ----- | ----- | | 데이터 전송 방식 | 쿼리 스트링 | HTTP request의 body | | 캐싱 | 캐싱될 수 있음 | 캐싱되지 않음 | | 보안 | URL에 데이터가 노
- 🚩 GET 요청, POST 요청 시 모두 동일하게 사용한다. 📍 getParameter(String name) > - 주어진 name에 해당하는 단일 파라미터 값을 문자열로 반환 📍 getParameterValues(String name) > - name에 해당하는 모든 파라미터 값을 문자열 배열로 반환 References 🔗 <a hr...
📍 Filter > - javax.servlet.Filter 인터페이스를 구현한 클래스이다. 요청과 응답을 동적으로 가로채서 요청이나 응답에 포함된 정보를 변환하거나 사용한다. 주로 요청/응답 변형, 인증 및 권한 부여, 로깅 및 감시를 목적으로 사용한다. 이미지 출처 📍 web.xml 파일의 Filter 매핑 코드 흐름 > - 1️⃣ reque...
📍 JSP(JavaServer Pages) > - HTML내에 Java 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성(HTML)하여 웹 브라우저에 돌려주는 서버 사이드 스크립트 언어이다. JSP는 Java Servlet으로 변환된 후 실행되므로 Servlet과 거의 유사하다. 하지만, Servlet과는 달리 HTML 표준에 따라 작성되므로 웹 ...
📍 Include Directive > - 정적으로 다른 JSP 페이지를 현재 페이지에 삽입하는 방식이다.(파일 포함 방식) 컴파일 시 로드되므로 동적 변경이 불가능하다. 하나의 서블릿이 생성된다. `` 이미지 출처 📍 Include Action > - 동적으
📍 리다이렉트(Redirect) > - 서버가 클라이언트에게 특정 URL로 이동하라고 알려주는 과정을 의미한다. 일반적으로 사용자를 한 URL에서 다른 URL로 보내는 데 사용된다. 리다이렉트 실행 시, 서버는 클라이언트에게 300번대의 HTTP 상태 코드(Status Code)와 다시 요청할 위치 정보(Location)를 응답으로 보내 리다이렉트 정보...