jsp 웹 - INF 아래 자원 방문

2676 단어 WEB-INF
다음으로 이동:http://hu-dabing.blog.163.com/blog/static/982234422012911114954387/
방법 1:
원래 WEB - INF 의 jsp 는 주소 표시 줄 을 통 해 접근 할 수 없 기 때문에 안전 합 니 다.
이 폴 더 에 있 는 jsp 파일 에 접근 하려 면 프로젝트 의 웹. xml 파일 에 servlet 를 설정 해 야 합 니 다.
다음 과 같다.
            
                  demo      //이름 은 사용자 정의 입 니 다.
                  /WEB-INF/hello.jsp      //현재 웹 프로그램의 루트 디 렉 터 리 부터 파일 의 상대 경로 / 표시
            

            
                  demo    //위 이름과 일치 해 야 합 니 다.
                  /XXX      //url 매 핑
            

접근 주소:http://localhost:8080/runtain/xxx
내용 을 볼 수 있 을 거 야.!
방법 2:
<jsp:forward page = "/WEB-INF/jsp/test/test.jsp" />

방법 3:
request. getRequestDispatcher("/WEB-INF/a.jsp").forward(request, response);

 어떻게 servlet 로 하여 금 웹 - inf 의 웹 페이지 나 jsp 파일 에 접근 하 게 합 니까?
웹 - inf 에서 응용 서버 는 방문 금지 디 렉 터 리, 즉 브 라 우 저 에서 직접 접근 할 수 없습니다.따라서 servlet 에 접근 할 수 있 습 니 다. 예 를 들 어 웹 - inf 에 a. jsp 가 있 으 면 request. getRequestDispatche ("/ WEB - INF / a. jsp"). forward (request, response) 를 사용 할 수 있 습 니 다.파견 방문 하기;
그러나 웹 - inf 에 a. htm 가 있 으 면 request. getRequestDispatcher ("/ WEB - INF / a. htm"). forward (request, response) 를 사용 합 니 다.방문 할 수 없습니다.
처음에는 이해 가 안 되 고 이상 하 다 고 생각 했 습 니 다. 나중에 생각해 보 니 jsp 도 servlet 입 니 다. 자동 으로 컴 파일 될 것 입 니 다. 그래서 work 디 렉 터 리 에 / web - inf / a $jsp. class 형식 이 있 을 것 입 니 다. 그래서 실 마 리 를 잡 았 습 니 다. 응용 서버 가. htm, 예 를 들 어 a $htm. class 를 컴 파일 할 수 있 도록 합 니 다. 이런 생각 을 가지 고 시작 합 니 다.
tomcat 아래 conf / web 에서 jsp 접근 방식 을 찾 습 니 다:
<servlet-mapping>
     <servlet-name>jsp</servlet-name>
     <url-pattern>*.jsp</url-pattern>
</servlet-mapping>

그래서 아래 에 추가:
 
<servlet-mapping>
     <servlet-name>jsp</servlet-name>
     <url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
     <servlet-name>jsp</servlet-name>
     <url-pattern>*.html</url-pattern>
</servlet-mapping>

 
결과: 모든 OK, a. htm, a. html 와 work / web - inf / 아래 에 a $htm. class, a $html. class 가 생 성 됩 니 다.

좋은 웹페이지 즐겨찾기