request.getRequestURL()
현재 접속해 있는 URL의 전체 경로를 가져온다.
request.getRequestURI()
현재 접속해 있는 프로젝트명부터 서블릿 주소까지의 경로.
request.getServletPath()
현재 접속해 있는 서블릿의 주소만 가져온다.
request.getContextPath()
현재 접속해 있는 프로젝트 주소만 가져온다.
${pageContext.request.contextPath }
<%=request.getContextPath()%>
JSP파일에서 이런식으로 졀대경로로써 경로 지정할 때 사용할 수도 있다.
▶ response.sendRedirect()의 상대 경로
./ | 현재위치 |
../ | 현재위치기준 상위폴더 |
./하위폴더/ | 현재위치기준 하위폴더 |
※ 현재 접속해 있는 서블릿이 기준이 된다.
※ 현재 접속 서블릿 "/Member/memberInfo" 에서 MemberInfo.jsp로 이동할 때
▶ 전체 경로 사용.
response.sendRedirect("http://localhost:8080/Jsp_MemberBoard/Member/MemberInfo.jsp");
▶ 같은 Member 폴더 안에 있으므로./ 로 현재 위치 사용
response.sendRedirect("./MemberInfo.jsp");
response.sendRedirect("MemberInfo.jsp");
(./ 생략해도 접속 가능)
▶ response.sendRedirect()의 절대 경로
※ " / " 는 최상위경로 디렉토리를 의미한다.
response.sendRedirect()메서드에서 절대 경로는 프로젝트전까지의 경로를 의미한다.
"/" --> "http://localhost:8080/"
response.sendRedirect("/Jsp_MemberBoard/Member/MemberInfo.jsp");
보통 상대 경로보다는 절대 경로를 통해 주소를 지정하는 것이 편하다.
request.getContextPath()를 변수에 담아서 절대 경로로써 사용한다.
※ request.getContextPath() 는 http://localhost:8080/Jsp_MemberBoard
▶ request.getRequestDispatcher() 사용
▶ 상대 경로
response.sendRedirect() 메소드와 같다.
request.getRequestDispatcher("./MemberInfo.jsp");
▶ 절대 경로
dispatcher의 절대 경로는 프로젝트까지 포함한다.
"/" --> "http://localhost:8080/Jsp_MemberBoard"
request.getRequestDispatcher("/Member/MemberInfo.jsp");
'JSP&Servlet' 카테고리의 다른 글
기초 (0) | 2022.05.29 |
---|---|
동기식&비동기식 그리고 ajax (0) | 2022.05.11 |
<form>태그의 데이터 전송 (0) | 2022.05.10 |
서블릿/JSP 정리01 (0) | 2022.05.05 |
JSP/ MVC모델 (0) | 2022.04.29 |