spring boot未加载静态内容
我为这个问题伤了脑筋。我有一个简单的控制器类,能够呈现一个简单的html页面以及Spring引导初始化器类 我已经将HTML页面放在src/main/resources目录下的静态文件夹中。 但是我无法获取html页面。相反,我得到了404错误 下面是我的项目结构 下面是我的Pom.xmlspring boot未加载静态内容,spring,spring-mvc,spring-boot,Spring,Spring Mvc,Spring Boot,我为这个问题伤了脑筋。我有一个简单的控制器类,能够呈现一个简单的html页面以及Spring引导初始化器类 我已经将HTML页面放在src/main/resources目录下的静态文件夹中。 但是我无法获取html页面。相反,我得到了404错误 下面是我的项目结构 下面是我的Pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmln
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
SimpleControl.java:
package com.example.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class SimpleController {
@RequestMapping("/")
public String home(){
System.out.println("Hello Home...");
return "home";
}
}
home.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Hello</title>
</head>
<body>
Helloooo......
</body>
</html>
你好
你好。。。。。。
控制台在运行Spring引导时记录:
::弹簧靴::(v1.5.1.版本)
2017-02-28 10:46:26.676信息8240---[main]com.example.DemoApplication:在abc上用PID 8240启动DemoApplication(C:\SpringBootEx\demo\target\classes由abc在C:\SpringBootEx\demo中启动)
2017-02-28 10:46:26.681信息8240---[main]com.example.DemoApplication:未设置活动配置文件,返回默认配置文件:默认
2017-02-28 10:46:26.771信息8240---[main]配置嵌入式Web应用程序上下文:刷新org.springframework.boot.context.embedded。AnnotationConfigEmbeddedWebApplicationContext@70b0b186:启动日期[2017年2月28日星期二10:46:26];上下文层次结构的根
2017-02-28 10:46:28.281信息8240---[main]trationelegate$BeanPostProcessorChecker:Bean'org.springframework.boot.autoconfigure.validation.ValidationAutoConfiguration'类型[class org.springframework.boot.autoconfigurare.validation.ValidationAutoConfiguration]不符合由所有BeanPostProcessor处理的条件(例如:不符合自动代理的条件)
2017-02-28 10:46:28.514信息8240---[main]trationlegate$BeanPostProcessor检查:类型为[class org.springframework.validation.beanvalidation.LocalValidatorFactoryBean]的Bean“validator”不符合由所有BeanPostProcessor处理的条件(例如:不符合自动代理的条件)
2017-02-28 10:46:28.949信息8240---[main]s.b.c.e.t.TomcatEmbeddedServletContainer:Tomcat已用端口初始化:8080(http)
2017-02-28 10:46:28.973信息8240---[main]o.apache.catalina.core.StandardService:启动服务Tomcat
2017-02-28 10:46:28.974信息8240---[main]org.apache.catalina.core.StandardEngine:启动Servlet引擎:apache Tomcat/8.5.11
2017-02-28 10:46:29.194信息8240---[ost-startStop-1]o.a.c.c.c.[Tomcat].[localhost].[/]:初始化Spring嵌入式WebApplicationContext
2017-02-28 10:46:29.194信息8240---[ost-startStop-1]o.s.web.context.ContextLoader:根WebApplicationContext:初始化在2428毫秒内完成
2017-02-28 10:46:29.448信息8240---[ost-startStop-1]o.s.b.w.servlet.ServletRegistrationBean:将servlet:“dispatcherServlet”映射到[/]
2017-02-28 10:46:29.455信息8240---[ost-startStop-1]o.s.b.w.servlet.FilterRegistrationBean:将筛选器:“characterEncodingFilter”映射到:[/]
2017-02-28 10:46:29.457信息8240---[ost-startStop-1]o.s.b.w.servlet.FilterRegistrationBean:将筛选器:“hiddenHttpMethodFilter”映射到:[/]
2017-02-28 10:46:29.458信息8240---[ost-startStop-1]o.s.b.w.servlet.FilterRegistrationBean:将筛选器:“httpPutFormContentFilter”映射到:[/]
2017-02-28 10:46:29.458信息8240---[ost-startStop-1]o.s.b.w.servlet.FilterRegistrationBean:将筛选器:“requestContextFilter”映射到:[/]
2017-02-28 10:46:29.967信息8240---[main]s.w.s.m.a.RequestMappingHandlerAdapter:正在寻找@ControllerAdvice:org.springframework.boot.context.embedded。AnnotationConfigEmbeddedWebApplicationContext@70b0b186:启动日期[2017年2月28日星期二10:46:26];上下文层次结构的根
2017-02-28 10:46:30.071 INFO 8240---[main]s.w.s.m.m.a.RequestMappingHandlerMapping:将“{[/]}”映射到公共java.lang.String.com.example.controller.SimpleController.home()上
2017-02-28 10:46:30.080 INFO 8240-[main]s.w.s.m.m.a.RequestMappingHandlerMapping:将“{[/error]}”映射到公共org.springframework.http.ResponseEntity>org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2017-02-28 10:46:30.081 INFO 8240-[main]s.w.s.m.m.a.RequestMappingHandlerMapping:将“{[/error],products=[text/html]}”映射到public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2017-02-28 10:46:30.145信息8240---[main]o.s.w.s.handler.simplerlhandler映射:将URL路径[/webjars/]映射到[class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]类型的处理程序上
2017-02-28 10:46:30.145信息8240---[main]o.s.w.s.handler.simplerlhandler映射:将URL路径[/]映射到[class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]类型的处理程序上
2017-02-28 10:46:30.194信息8240---[main]o.s.w.s.handler.simplerlhandler映射:将URL路径[/**/favicon.ico]映射到[class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]类型的处理程序上
2017-02-28 10:46:30.478信息8240---[main]o.s.j.e.a.AnnotationMBeanExporter:为启动时的JMX暴露注册bean
2017-02-28 10:46:30.582信息8240---[main]s.b.c.e.t.TomcatEmbeddedServletContainer:Tomcat在端口8080(http)上启动
2017-02-28 10:46:30.590 INFO 8240---[main]com.example.DemoApplication:在4.391秒内启动了DemoApplication(JVM运行了5.147)
2017-02-28 10:49:04.176信息8240---[nio-8080-exec-1]o.a.c.c.c.[Tomcat].[localhost]./]:初始化Spring FrameworkServlet“dispatcherServlet”
2017-02-28 10:49:04.176信息8240---[nio-8080-exec-1]o.s.web.servlet.Dispatch
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Hello</title>
</head>
<body>
Helloooo......
</body>
</html>
@RequestMapping("/")
public String home() {
System.out.println("Hello Home...");
return "home.html";
}
Add the below tags inside <build></build>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>`
</build>