JSP 12. URL 패턴
URL 패턴
URL 패턴
- 서블릿 매핑 시 사용되는 가상의 이름
- 클라이언트가 브라우저에서 요청할 때 사용되며 반드시 /(슬래시)로 시작해야 함
1) exact mapping ( 이름까지 일치 )
( 매칭 URL)
/login/login.do => http://localhost/chap09/login/login.do
- UrlTest.java
// 정확히 이름까지 일치하는 패턴
@WebServlet("/order/ezen")
public class UrlTest extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
// 컨텍스트 이름만 가져옴
String context = request.getContextPath();
System.out.println("컨텍스트 이름: "+context);
// 전체 URL 가져옴
String url = request.getRequestURL().toString();
System.out.println("전체 URL : "+context);
// 서블릿 매핑 이름만 가져옴
String mapping = request.getServletPath();
System.out.println("서블릿 매핑 이름 : "+mapping);
// URI 가져옴
String uri = request.getRequestURI();
System.out.println("URI : "+uri);
out.print("<html><body bgcolor='yellow'>");
out.print("<b>UrlTest입니다.</b>");
out.print("</html></body>");
}
}
2) path mapping (디렉터리까지 일치)
/login/* => http://localhost/login/
http://localhost/login/login
http://localhost/login/login.do
http://localhost/login/order/
// 디렉터리 이름까지 일치하는 패턴
@WebServlet("/order/*")
3) extension mapping (확장자만 일치)
*.do => http://localhost/chap09/login.do
http://localhost/chap09/order.do
http://localhost/chap09/login/logout.do
// 확장자만 일치하는 패턴
@WebServlet("*.do")
댓글남기기