Java SpringBoot Web MVC应用程序无法解析视图

Java SpringBoot Web MVC应用程序无法解析视图,java,spring,spring-mvc,spring-boot,Java,Spring,Spring Mvc,Spring Boot,我已经使用SpringBootRESTAPI很长时间了;我想尝试一下WebMVC。然而,我被第一部分本身卡住了 我已将该项目上传到 到目前为止我所做的: 主要使用spring boot starter web+tomcat embed jasper定义POM.xml。 使用@GetMapping/greeting定义了一个@Controller,它返回一个视图的名称-hello 定义了以下属性: spring.mvc.view.prefix=/WEB-INF/views/ spring.mvc.

我已经使用SpringBootRESTAPI很长时间了;我想尝试一下WebMVC。然而,我被第一部分本身卡住了

我已将该项目上传到

到目前为止我所做的:

主要使用spring boot starter web+tomcat embed jasper定义POM.xml。 使用@GetMapping/greeting定义了一个@Controller,它返回一个视图的名称-hello 定义了以下属性:

spring.mvc.view.prefix=/WEB-INF/views/

spring.mvc.view.suffix=.jsp

在src/main/web/web-INF/views/hello.jsp创建了一个非常基本的视图hello.jsp

创建了一个作为SpringBootApplication运行的主应用程序。 错误:

白标错误页

此应用程序没有针对的显式映射 /错误,因此您将此视为一种回退

2018年3月26日星期一22:55:03

出现意外错误类型=未找到,状态=404。没有可用的消息

日志:

编辑:

我根据评论尝试了以下更改;然而,这似乎没有帮助

将hello.jsp放在src/main/resources/templates/WEB-INF/views中 将hello.jsp放在src/main/resources/static/WEB-INF/views中 将hello.jsp放在src/main/resources/WEB-INF/views中 将hello.jsp放在src/main/webapp/WEB-INF/views中 请告知

src/main/web/WEB-INF/views/hello.jsp
将不会被Spring Boot找到。作为Spring引导约定,您应该将视图放在resources文件夹下:

src/main/resources/templates/...
对于您的CSS:

src/main/resources/static/...
如果您使用的是Spring Boot,那么最好使用项目初始值设定项: 从中选择您想要的视图技术,Spring Boot将为您添加其依赖项,因此您无需添加它们或自行配置它们步骤3

将不会被Spring Boot找到。作为Spring引导约定,您应该将视图放在resources文件夹下:

src/main/resources/templates/...
对于您的CSS:

src/main/resources/static/...
如果您使用的是Spring Boot,那么最好使用项目初始值设定项: 从这里选择您想要的视图技术,Spring Boot将为您添加其依赖项,因此您无需自行添加或配置这些依赖项第3步。

问题在于提供的Maven Dependency tomcat embed jasper范围,该范围用于编译JSP

对于这个maven依赖项的默认范围,它会飞起来

    <!-- Tomcat for JSP rendering -->
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
    </dependency>
问题在于提供的Maven依赖项tomcat embed jasper的作用域,该作用域用于编译JSP

对于这个maven依赖项的默认范围,它会飞起来

    <!-- Tomcat for JSP rendering -->
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
    </dependency>

src/main/web,“web”文件夹应该是“webapp”@HimanshuBhardwaj我尝试重命名为“webapp”,还执行了一些P&C,但没有帮助。src/main/web,“web”文件夹应该是“webapp”@HimanshuBhardwaj我尝试重命名为“webapp”,还执行了一些P&C,但是没有帮助。我尝试了建议的更改和几个P&C,但没有成功。我尝试了建议的更改和几个P&C,但没有成功。