Servlet
서블릿은 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스
Servlet의 특징
1. 서버쪽에서 실행되면서 기능을 수행한다.
2. 동적인 여러 가지 기능을 제공한다.
3. 스레드 방식으로 실행된다.
4. 자바의 특징(객체 지향)을 모두 가지고 있다.
5. 컨테이너 종류에 상관없이 실행된다.
6. 보안 기능을 적용하기 쉽다.
7. 웹 브라우저에서 요청 시 기능을 수행한다.
HttpServlet
HTTP 프로토콜을 사용하는 서블릿의 기능을 구현하는 클래스
요청 경로 확인하는 방법
System.out.println(request.getRequestURI());
String uri = request.getRequestURI();
System.out.println(request.getContextPath());
String contextPath = request.getContextPath();
요청 경로에 따라 view 페이지를 다르게 정하는 방법
if(uri.equals( contextPath + "/members.do")) {
RequestDispatcher rd = request.getRequestDispatcher("WEB-INF/views/members.jsp");
rd.forward(request, response);
} else if(uri.equals( contextPath + "/login.do")) {
RequestDispatcher rd = request.getRequestDispatcher("WEB-INF/views/login.jsp");
rd.forward(request, response);
} else if(uri.equals( contextPath + "/admin.do")) {
RequestDispatcher rd = request.getRequestDispatcher("WEB-INF/views/admin.jsp");
rd.forward(request, response);
}
RequestDispatcher rd = request.getRequestDispatcher("WEB-INF/views/next.jsp");
rd.forward(request, response);
*WEB-INF 폴더의 경로에 있는 jsp파일은 브라우저 주소에 직접 작성해서 접근할 수가 없다. Servlet을 통해서만 접근할 수 있다.