2015-06-10 59 views
3

我在使用Spring MVC創建控制器:刪除前綴和春季頁面的URL後綴MVC

@Controller 
public class MyController { 


@RequestMapping("/") 

public String showHome() { 

return 「/WEB-INF/pages/home.jsp"; 

} 



@RequestMapping(「/users") 
    public String showUser() { 
     return "/WEB-INF/pages/users.jsp"; 
} 

} 

我想避免寫在每個方法和控制這種/ WEB-INF /頁,是有什麼辦法只寫jsp頁面的名稱(帶文件夾或不帶),並且應用程序返回了正確的頁面?

回答

5

使用Spring MVC InternalResourceViewResolver加入這個春天配置文件:在控制器

在您的註解驅動的配置InternalResourceViewResolver應在配置中設置

<bean id="jspViewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/WEB-INF/pages/"></property> 
     <property name="suffix" value=".jsp"></property> 
    </bean> 

,只回「家」類延伸WebMvcConfigurerAdapter像這樣:

@Bean 
    public ViewResolver getViewResolver(){ 
     InternalResourceViewResolver resolver = new InternalResourceViewResolver(); 
     resolver.setPrefix("/WEB-INF/pages/"); 
     resolver.setSuffix(".jsp"); 
     return resolver; 
    } 
+0

謝謝@Safwan Hijazi,它工作正常。 – jdev