Spring mvc 新Spring MVC4中的样式表

Spring mvc 新Spring MVC4中的样式表,spring-mvc,thymeleaf,spring-boot,Spring Mvc,Thymeleaf,Spring Boot,我在SpringMVC4(SpringBoot)中启动了一个新的web项目,我的问题是我必须把css文件放在哪里?我正在使用thymeleaf模板引擎和我的文件夹结构,如图所示 正如您所看到的,我试图在resources文件夹下创建一个CSS文件夹,但是index.html中的链接不起作用。有什么想法吗?根据: 默认情况下,Spring Boot将从类路径中名为/static(或/public或/resources或/META-INF/resources)的文件夹或ServeltContext的

我在SpringMVC4(SpringBoot)中启动了一个新的web项目,我的问题是我必须把css文件放在哪里?我正在使用thymeleaf模板引擎和我的文件夹结构,如图所示

正如您所看到的,我试图在resources文件夹下创建一个CSS文件夹,但是index.html中的链接
不起作用。有什么想法吗?

根据:

默认情况下,Spring Boot将从类路径中名为/static(或/public或/resources或/META-INF/resources)的文件夹或ServeltContext的根目录提供静态内容


还有一两个示例,例如..

确保在
pom.xml
中将项目打包为
war

/src/main/resources
文件夹通常部署到
WEB-INF/classes
,因此无法直接从上下文访问它

但是,
/src/main/webapp
通常部署到
/
(web应用的根目录),可以从上下文访问

您应该将web资源放在
/src/main/webapp
下(例如
/src/main/webapp/css
)。然后,它们会自动部署在web应用程序的上下文根目录下。然后可以从以下位置访问它们:例如
/css

<link rel="stylesheet" th:href="@{/css/main.css}" />


我还将您的模板移动到
/src/main/webapp/WEB-INF/templates

如果您阅读SpringBoot文档,您将看到SpringBoot将自动添加位于以下任何目录中的静态WEB资源:

  • /META-INF/资源/
  • /资源/
  • /静态/
  • /公开的/
您已经创建了名为“css”的文件夹,并将文件“main.css”放在该文件夹中。 因此,在HTML中引用此文件时,应该使用相对路径

<link rel="stylesheet" href="/css/main.css" />

它对我不起作用。请注意,他使用的是Thymeleaf。它的文档说明
templates
文件夹必须保留在
src/main/resources