서블릿 추가코드

  1. 서버실행

package boot.start.servlet;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;

@WebServlet(name = "servletInitServlet", urlPatterns = "/request")
public class ServletInit extends HttpServlet {

    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("request");
        System.out.println("req = " + req);
        System.out.println("resp = " + resp);

        String username = req.getParameter("username");
        System.out.println("username = " + username);

        resp.setContentType("text/plain");
        resp.setCharacterEncoding("utf-8");
        resp.getWriter().write("hello " + username);
    }
}
  1. 헤더 출력

package boot.start.servlet;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.util.Enumeration;

import java.io.IOException;

@WebServlet(name = "requestServlet", urlPatterns = "/method")
public class RequestServlet extends HttpServlet {

    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("--- REQUEST-LINE - start ---");

        // 헤더 하나씩 찍어서 확인
//        System.out.println("request.getMethod() = " + req.getMethod()); //GET
//        System.out.println("request.getProtocal() = " + req.getProtocol()); //HTTP/1.1
//        System.out.println("request.getScheme() = " + req.getScheme()); //http
//        // http://localhost:8080/request-header
//        System.out.println("request.getRequestURL() = " + req.getRequestURL());
//        // /request-test
//        System.out.println("request.getRequestURI() = " + req.getRequestURI());
//        //username=hi
//        System.out.println("request.getQueryString() = " + req.getQueryString());
//        System.out.println("request.isSecure() = " + req.isSecure()); //https 사용 유무


        // 요청 헤더 정보 출력
//        System.out.println("---- Headers ----");
//        Enumeration<String> headerNames = req.getHeaderNames();
//        while (headerNames.hasMoreElements()) {
//            String headerName = headerNames.nextElement();
//            String headerValue = req.getHeader(headerName);
//            System.out.println(headerName + ": " + headerValue);
//        }

        // 가장 최근에 나온 더 간결해진 헤더 출력 코드
        req.getHeaderNames().asIterator()
                .forEachRemaining(headerName -> System.out.println(headerName + ": " + headerName));

        System.out.println("--- REQUEST-LINE - end ---");
        System.out.println();
    }
}

Last updated