2017-12-25 26 views
0

우리가 일반적으로 내가동일한 URI 패턴에서 spring mvc의 html 및 jsp 페이지를 처리하는 방법은 무엇입니까?

"/help" should map to "help.html" 
"/deposit" should map to "deposit.jsp" 

가정하자 내가 (확장자없이) URI 이하이있는 것처럼 같은 URI 에서 HTML과 JSP를 매핑 할 수있는 방법

"/static/help" for mapping HTML pages 
"/jsp/deposit" for mapping jsp pages 

같은 HTML 및 JSP 에 대해 서로 다른 URI를 사용 주어진 위치에 매핑해야합니다.

그리고 컨트롤러의 뷰 이름의 반환 값에 .html이나 .jsp와 같은 확장명을 넣지 않으려 고합니다.

어떻게하면됩니까?

디스패처 서블릿의 URL mapping- "/"

Request   Controller's   Physical 
URI    logical    File 
       view name    location 
------   ----------    ------------ 
"/"    "home"     WEB-INF/common/home.html 
"/help"   "help"     WEB-INF/common/help.html 
"/deposit"  "deposit"    WEB-INF/app/deposit.jsp 
"/withdraw"  "withdraw"    WEB-INF/app/withdraw.jsp 
+0

아무것도 접미어를 유지 -INF는 서블릿 컨테이너에 의해 "처리"됩니다. WEB-INF 디렉토리 외부에 정적 파일 (정적 HTML 파일이라고 가정)을 두는 것이 좋습니다. –

+0

그래, 복사 및 붙여 넣기 실수, 그들은 이미 밖에서 btw 있습니다. –

답변

0

이 시도 : 빈

<bean id="viewResolver" 
    class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 

    <property name="prefix" value="/yourDirectory/"/> 
    <property name="suffix" value=""/> 
</bean> 

그리고 WEB 내부에 배치되는 컨트롤러의

@RequestMapping("/home") 
public String home() { 
    return "home.html"; 
} 

@RequestMapping("/deposit") 
public String deposit() { 
    return "deposit.jsp"; 
}