在spring MVC中删除页面url的前缀和后缀

时间:2015-06-10 08:53:49

标签: java spring jsp spring-mvc

我使用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页面的名称(带文件夹或没有),并且应用程序返回正确的页面?

1 个答案:

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