리소스종류와 식별방법
1. 파일 시스템 리소스 : 파일 시스템 상의 절대경로(D:\contents\cat1.jpg)
2. class Path 리소스 : class path 이후의 절대 경로 (/WebStudy01/res/kr/or/ddit/images/cat1.jpg)
<!-- D:\B_Util\eGovFrameDev-3.9.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\WebStudy01\WEB-INF\classes\kr\or\ddit\images\cat1.jpg -->
3. web 리소스 : 서버에 의해 사용되고, 서버에 의해 경로가 결정, URL을 가지고 있음 (http://[IP]:[Port]/WebStudy01/webapp/resources/images/cat1.jpg) -> 다이렉트로 접근가능
<!-- D:\B_Util\eGovFrameDev-3.9.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\WebStudy01\resources\images\cat1.jpg -->
** web resource 식별 방법(URL)
** URL (Unified Resource Locator) -> 중복을 해결 가능
URI (Unified Resource Indetify) -> 이거랑 위에랑 거의 같은 의미로 씀
(URL = URI = URC를 같은 의미로 사용하지만 다른 뜻임)
URC (Unified Resource Content) -> 중복을 해결 할 수 없음
URN (Unified Resource Naming) -> 중복해결 불가, 전체 Name이 필요함(같은 장소에 고정현이 2명이 있으면 식별 불가 하다는 뜻)
** URL 표현 방법
http://IP[Domain]:port(Tomcat에 있는 webapp에 접근하기 위해서 사용(진짜 데이터는 wtpwebapp에 존재))
/contextPath(contextRoot)/depth.../resourceName
http://localhost:80/WebStudy01/resources/images/cat1.jpg
1. 상대 경로 : 현재 브라우저가 가지고 있는 URL 기준으로 상대적 경로표기.
2. 절대 경로 : 자원의 위치에서 최상위 경로부터 전체 경로가 표기.(이미 인지하고 있는 경로는 표현하지 않는다.)
1) client side : <%=request.getContextPath() %>/resources/images/cat1.jpg
반드시, contextPath부터 시작되는 경로 형태.
2) server side : /resources/images/cat1.jpg(서버사이드에서는 반드시 절대경로만 사용할 것)
contextPath 이후의 경로 형태.
<%
// 서버쪽 기준임(Tomcat서버안의 WebStudy01에서 실행되는 중임)
String path = "/resources/images/cat1.jpg";
URL url = application.getResource(path);
out.print(url);
%>
http://localhost:80/WebStudy01/resources/images/cat1.jpg
Model1방식 : 하나의 파일에서 모든 처리를 다함
Model2방식 : 2개의 파일(자바와 jsp)에서 처리를 분담함
<img src="<%=request.getContextPath() %>/resources/images/cat1.jpg">
<img src="../resources/images/cat1.jpg">
<img src="http://localhost:80/WebStudy01/resources/images/cat1.jpg">
<img src="/WebStudy01/resources/images/cat1.jpg">