我使用spring 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 / pages,有没有办法只写jsp页面的名称(带文件夹或没有),并且应用程序返回正确的页面?
答案 0 :(得分:5)
在Spring配置文件中添加Spring MVC <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
并且仅在控制器中返回“home”
在注释驱动的配置中,WebMvcConfigurerAdapter
应该在扩展 @Bean
public ViewResolver getViewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/pages/");
resolver.setSuffix(".jsp");
return resolver;
}
的配置类中设置,如下所示:
Foo