2015-06-10 2 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, добавив это весной конфигурационный файл:

<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> 

и только возвращение «домой» в контроллере

В аннотацию управляемой конфигурации InternalResourceViewResolver должны быть установлены в конфигурации класс, который распространяется WebMvcConfigurerAdapter:

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

Спасибо @Safwan Hijazi, он отлично работает. – jdev

Смежные вопросы