spring boot 无法引用静态资源

0.说明:

在 resource/templates/index.html可以正常引用js。

而在resource/templates/system/sysDept.html中 不能正常引用static静态资源中的js


1.首先上项目结构图:

index.html可以正确引用static中的静态文件,而在system目录下,则不能引用到

2.index.html引用格式和sysDept.html引用一样,故贴出有问题的sysDept.html

**
图片说明

3.我的跳转路径:

图片说明

4.代码中的处理:

图片说明

5问题来了:

图片说明

6.疑惑点:

在引用静态资源时,为什么会出现我访问的路径 sys/dept2/呢?应该出现这样【http://localhost:8080/css/plugins/jsTree/style.min.css】才是正确的啊,

故请教大家
##

回答

添加 ../

为什么我的路径中会出现 【sys/dept2/】呢?

2个回答

首先你看清楚了,这两个文件不再同一个目录下,引用js或者css时路径就不一样。你用同样的引用当然无效。
如果index页面引用是css/xxx/xxx
那么sysdept页面就是../css/xxx/xxx

sys/dept2 这个是你的页面路由地址,也可以说是页面地址,后面就是css引用

qq_23126581
渊渟无迹静涛君 回复沐风Cc: 以后有问题可以直接@我
大约一年之前 回复
mufeng633
沐风Cc 第二种:添加 th:href=@{} 属性。 如: <script src="/js/jquery.min.js" th:href="@{/js/jquery.min.js}"></script> 。这一种可以直接引用路径,比较方便
大约一年之前 回复
mufeng633
沐风Cc 第一种:就像刚才老哥说的:在前面加入 ../ 获取到相对路径
大约一年之前 回复
mufeng633
沐风Cc 回复玄元复始道生初,守一无穷尽万物: 补充完整答案:
大约一年之前 回复
qq_23126581
渊渟无迹静涛君 回复沐风Cc: 该解决的问题已经解决了,如果有帮助,请采纳下,谢谢
大约一年之前 回复
qq_23126581
渊渟无迹静涛君 回复沐风Cc: 你页面检查元素都是有的。浏览器地址栏不会有,不信你检查csdn的
大约一年之前 回复
mufeng633
沐风Cc 回复玄元复始道生初,守一无穷尽万物: 有点疑惑,老哥。为什么传统的 SSM项目,jsp页面引入js,js路径中就不会加上我访问的页面路由地址,而spring boot 引用js会呢?
大约一年之前 回复
qq_23126581
渊渟无迹静涛君 回复沐风Cc: sys/dept2 这个是你的页面路由地址,也可以说是页面地址,后面就是css引用
大约一年之前 回复
mufeng633
沐风Cc 老哥,我图文回答了你说的情况,可以看一下
大约一年之前 回复

完整答案:

第一种:添加 ../

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

第二种:利用 thymeleaf的 th:href=@{}属性

<link href="css/style.css" th:href="@{/js/jquery.min.js}" rel="stylesheet">

第三种:直接添加 / 符号 就可以了

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

找到了解决办法,真是不容易啊
个人推荐第三种

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐