spring-boot - Spring Boot 没有 CSS 的映射 - JS
问题描述
我的项目结构:
resoureces
static
css
js
templates
a.html
b.html
我的应用程序.yml:
resources:
static-locations: classpath:/
还有我的html代码:
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<meta content="webkit" name="renderer">
<meta content="width=device-width, initial-scale=1" name="viewport">
<link rel="shortcut icon" href="static/img/favicon.ico" />
<script src="static/js/jquery-3.2.1.js"></script>
<script src="static/js/bootstrap.min.js"></script>
<script src="static/js/jquery-confirm.min.js"></script>
<link href="static/css/reset.css" rel="stylesheet">
<link href="static/css/bootstrap.min.css" rel="stylesheet">
<link href="static/css/pretty.css" rel="stylesheet">
<link href="static/css/iconfont.css" rel="stylesheet">
<link href="static/css/common.css" rel="stylesheet">
<link href="static/css/jquery-confirm.min.css" rel="stylesheet">
</head>
<body>
<p>test</p>
</body>
我的控制器:
@Controller
public class IndexController {
@GetMapping("/index")
public String toIndex(){
return "index";
}
@GetMapping("/index/test")
public String test(){
return "index";
}
}
/index css 和 js 成功
但是 /index/test idea 没有显示它的映射
什么是正确的配置?
HTML 如何链接 CSS 和 JS?
解决方案
问题是您使用的是相对路径,例如static/css/reset.css
.
您的浏览器将使用当前路径处理这些,并附加相对路径。
假设你在 8080 端口上运行你的应用程序,当你调用 时http://localhost:8080/index
,资源将从http://localhost:8080/static/css/reset.css
. 但是,当您调用 时/index/test
,相对路径将引用http://localhost:8080/index/static/css/reset.css
.
这意味着由于您使用相对路径,如果您的路径不同,它将从不同的位置获取资源。
一种可能的解决方案是在 HTML 部分中使用<base />
标签<head>
,例如:
<base href="/" />
通过设置<base />
标签,你告诉你的浏览器从哪里获取资源。
可以在这个问题中找到更详细的信息。
另外,请注意,默认情况下,Spring boot 将src/main/resources/static
在上下文路径本身内提供资源,因此可能必须static/
从 URL 中删除部分,例如:
<link href="css/reset.css" rel="stylesheet">
推荐阅读
- python - 使用vmap(jax)对矩阵元素求和?
- dockerfile - 当应用程序部署在 Windows 容器上时,Dontnet Framework 应用程序的日志问题
- java - 使用函数显示作业列表
- python - 用于列/数组中所有可能的连续条目组合的 Python 循环
- python - 如何处理类中的 matplotlib 对象?
- python - matplotlib - 将 2D 数据转换为 3D 数据
- c# - Await 和 .Result 一直在等待
- python - 确定两个计数数组之间的相似性
- python - python plotly graph_objects box marker的属性异常颜色不起作用(可能的错误)
- java - 如何在 Spring websocket stomp 服务器中使用 ChannelInterceptorAdapter 断开客户端?