Spring提供的视图目录是什么?

时间:2014-10-21 05:20:26

标签: java spring spring-mvc

Spring 4默认提供内容的目录是什么,如何更改?我使用的是Spring Tool Suite,并使用顶部工具栏中的 New-> Spring Project 生成了这个项目。

这是我当前目录设置的列表..我似乎无法将home.jsp放在正确的位置,以便它为页面提供服务 - 我一直在获得404.

以下是我的控制器的代码:

enter image description here

我当前的目录结构:

enter image description here

这类事情的最佳做法是什么?如何使其正常运行?

1 个答案:

答案 0 :(得分:2)

Spring在您在配置中指定的位置查找视图,即在ViewResolver bean的定义中查找视图。因此,要让Spring注册视图(在您的情况下位于/WEB-INF/views中),您必须在Spring配置中使用以下bean:

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

或者如果您使用的是Java配置:

@Bean
public InternalResourceViewResolver viewResolver() {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver();
    resolver.setPrefix("/WEB-INF/views/");
    resolver.setSuffix(".jsp");
    return resolver;
}

指定此配置后,应正确解析视图。

如果您不想配置ViewResolver,还可以从控制器方法返回视图的绝对位置:

return "/WEB-INF/views/home.jsp"