보통 웹 프로젝트 작업을 할때는 기본적으로 contextPath를 / (root)로 작업을 합니다만
한가지 서버에 여러가지의 프로젝트가 돌아간다거나 할때 구분을 위해 contextPath를 나누어 사용을 하게됩니다.
예) tskwon.tistory.com/bbs/boardList.do -> tskwon.tistory.com/blog/bbs/boardList.do (/blog라는 contextPath 사용 예.)
문제는 이 contextPath가 개발을 완료한 이후에 변경이 된다면 페이지마다 링크를 모두 바꿔야하는 불상사가 생기게 됩니다.
그래서 이를 대비해서 사용할 수 있는것이 ${pageContext.request.contextPath} 입니다.
EL(Expression Language)을 통해서 간편하게 사용할 수 있는것이 장점 입니다.
사용 예) <a href="${pageContext.request.contextPath}/bbs/boardList.do">게시판</a>
위와 같이 링크 부분에 넣어두면 ${pageContext.request.contextPath} 부분에 서버에서 설정된 contextPath가 들어가게 됩니다.
주의 하실점은 servlet 2.4 이하 즉 2.3 버전까지는 EL을 지원하지 않으므로 <c:out>을 통해서 출력해야 합니다.
c:out 출력 예) <a href="<c:out value='${pageContext.request.contextPath}'/>/bbs/boardList.do">게시판</a>
[jsp] illegal to have multiple occurrences of contentType with different values 오류 (0) | 2013.08.08 |
---|---|
[jsp] csv 파일 다운로드 만들기 (0) | 2013.08.05 |
[iBatis] NoSuchElementException 오류 (2) | 2013.07.08 |
[java] 간단하게 썸네일 이미지 만들기 (JIMI 이용) (1) | 2013.07.01 |
[jsp] WEB-INF 경로 접근을 막는 방법 (1) | 2013.04.30 |