沐风Cc
2019-06-28 11:07
采纳率: 73.7%
浏览 831
已采纳

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引用

    打赏 评论
  • 沐风Cc 2019-06-28 12:31

    完整答案:

    第一种:添加 ../

    <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">
    
    

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

    打赏 评论

相关推荐 更多相似问题