Intellij JSP - Request 기본 객체와 URL

1 minute read

Request 기본 객체와 URL

  • Project - RequestForm

    • requestform.html
        <!DOCTYPE html>
        <html lang="en">
        <head>
                <meta charset="UTF-8">
                <title>Title</title>
        </head>
        <body>
        <form action="requestform.jsp">
                <label>이름 : <input type="text" name="name"></label><br/>
                <label>사는 곳 : <input type="text" name="place"></label>
                <input type="submit" value="Get Request Form">
        </form>
        </body>
        </html>
      
    • requestform.jsp
      		
        <%@ page contentType="text/html;charset=UTF-8" language="java" %>
        <html>
        <head>
                <title>Request Form</title>
        </head>
        <body>
        1. 클라이언트 IP 주소 <%= request.getRemoteAddr()%><br/>
        2. 요청 매서드: <%= request.getMethod()%><br/>
        3. 프로토콜: <%= request.getProtocol()%><br/>
        4. 서버 호스트 이름: <%= request.getServerName()%><br/>
        5. 서버 포트: <%= request.getServerPort()%><br/>
        6. 요청 URI: <%= request.getRequestURI()%><br/>
        7. 요청 URL: <%= request.getRequestURL()%><br/>
        8. 요청 URL중 쿼리 스트링: <%= request.getQueryString()%><br/>
        9. 컨텍스트 패스 정보: <%= request.getContextPath()%><br/>
        10. Referer: <%= request.getHeaders("referer")%>
        </body>
        </html>
      
  • Request - URL

    • form 태그를 이용해 requestform.jsp 페이지를 를 요청한다

    • Request의 요청 정보를 출력한다

    • http://localhost:8080/requestform.jsp?name=K&place=Korea

      • (1) http: - request.getProtocol() : 프로토콜 이름과 버전 정보가 함께 리턴된다.
      • (2) localhost - request.getServerName() : 호스트 서버의 이름이 리턴된다.
      • (3) 8080 - request.getServerPort() : 서버가 요쳥을 받아들인 포트 번호가 리턴된다.
      • (4) requestform.jsp -request.getRequestURI() : 호스트 서버 이름 및 포트 번호 뒷부분이 리턴된다. 이 중 쿼리스트링은 리턴되지 않는다.
      • http://localhost:8080/requestform.jsp - request.getRequestURL() : (1)~(4)번 모두 리턴한다.
      • ?name=K&place=Korea - request.getQueryString() : (1)~(4)번에 포함되지 않은 쿼리스트링만 리턴된다.
      • request.getContextPath() : (4)번에 포힘되어 있는 웹 애플리케이션 이름이 “/”와 함께 리턴된다. (Intellij 없이 Tomcat 서버로만 실행시 나오는것 확인)
      • request.getHeaders(“referer”) : 헤더 정보 중에 “referer”로 저장된 내용을 얻어온다. “referer”의 의미는 본 페이지 (requestform.jsp)를 보기 직전의 페이지 (requestform.html)을 의미하며 그 직전의 페이지가 현재의 페이지를 참조 (refer)하고 있다는 의미로 “referer”라는 단어를 사용한다.
  • Servlet을 포함한 JSP 2.1 웹 프로그래밍 입문에서 완성까지

Categories:

Updated:

Leave a comment