Java Servlet[3]

BaeSeBin·2025년 1월 3일

Java Servlet

목록 보기
3/7

😊HttpServlet

앞에서 정리해왔지만 다시 한번 더 정리해보자
HttpServlet은 상위 클래스로 GenericServlet이라는 추상 클래스를 상속함. GenericServlet은 HTTP 프로토콜 이외의 Request에 대해서도 Response 기능을 정의하고 있다는 것임.

😊HttpServletRequest

Java Servlet API에서 제공하는 인터페이스로 서블릿 객체에서는 최종적으로 Request를 처리하는 doGet()/doPost() 등은 HttpServletRequest와 HttpServletResponse를 파라미터로 전달받음
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
이때 HttpServletRequest는 HTTP 형태로 들어오는 요청(Request)정보를 파악하기 위해 사용됨
1. 요청 정보 메서드
String getMethod() // HTTP 요청 메서드(GET, POST 등)를 반환.
String getRequestURI() // 	요청의 URI(경로)를 반환.
2. 요청 데이터 읽기
String getParameter(String name) // 요청 파라미터 값을 반환.
// 이때 getParameter()의 반환 값은 항상 String임

String[] getParameterValues(String name) // 동일 이름의 파라미터에 대한 값 배열을 반환.
3. 서블릿/JSP 간에 데이터 전달
void setAttribute(String name, Object value) 
// 키 & 값의 형태로 데이터를 저장 할 수 있음
4. 요청 디스패치 관련
RequestDispatcher getRequestDispatcher(String path)
// 현재의 요청을 다른 서버의 자원(Servlet 혹은 JSP)에게 전달하는 용도로 사용됨
forward() // 현재까지의 Response 내용은 무시하고 JSP가 작성하는 내용만을 브라우저로 전달

😊HttpServletResponse

Java Servlet API에서 제공하는 인터페이스로, 보통 쓰는 내용을 담당함
Web MVC 구조에서 HttpServletResponse는 JSP에서 주로 처리되기 때문에 sendRedirect()를 이용하는 경우가 많음
리다이렉트 관련 메소드
void sendRedirect(String location) // 클라이언트를 다른 URL로 리다이렉트함
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
   resp.sendRedirect("https://www.example.com");
}

0개의 댓글