如何从控制器传递视图?

sc4hvdpw  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(379)

我对springmvc还不熟悉。我正在尝试使用多种视图。当我使用一个视图和一个控制器时,它工作得非常好。但是当我试图从另一个视图打开一个视图时,我得到了HTTP404错误(请求的资源找不到)
项目目录结构
如图所示,我将index.jsp作为我的主页视图。在这个页面中,我需要导航另一个页面(viewpage1.jsp),它位于web inf/jsp目录中。当我这样做时,我得到了http404notfound错误。 HelloController.javapackage com.springwebproject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; @Controller public class HelloController { @RequestMapping("/") public String home() { return "index"; } @RequestMapping("/hello") public String display() { return "viewpage1"; } }index.jsp ```

<!-- Provide support for component scanning -->  
<context:component-scan base-package="com.springwebproject" />  

<!--Provide support for conversion, formatting and validation -->  
<mvc:annotation-driven/>  
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  

 </bean>  
sh7euo9m

sh7euo9m1#

将此bean添加到配置中:

@Bean
    public ViewResolver viewResolver() {
        InternalResourceViewResolver viewResolver =
                new InternalResourceViewResolver();
        viewResolver.setPrefix("/views/"); // locate your directory with *.jsp files here
        viewResolver.setSuffix(".jsp");
        return viewResolver;
    }
lyr7nygr

lyr7nygr2#

由于您已将Map设置为“/hello”以查看viewpage1,因此必须如下更改href:

<a href="/hello">Go to Next View</a>

如果有用的话,请告诉我。

相关问题