spring boot css和js资源在某些情况下无法加载

时间:2016-04-02 15:31:26

标签: twitter-bootstrap spring-mvc spring-security spring-boot thymeleaf

好的,据我所知,我正在使用正确的设置来为Spring引导项目中的Thymleaf资源链接资源

Resources screenhot

目前我正在使用以下内容链接它们:

<link href="../static/css/bootstrap.css" th:href="@{css/bootstrap.css}"
rel="stylesheet" media="screen" />

<link href="/css/bootstrap-theme.css"
th:href="@{css/bootstrap-theme.css}" rel="stylesheet" media="screen" />


<script type="text/javascript" src="/js/jquery-2.2.2.js"
th:src="@{js/jquery-2.2.2.js}"></script>


 <script type="text/javascript" src="/js/tether.js"
th:src="@{js/tether.js}"></script>

我的控制器中的路由路径是

@RequestMapping(value = "/mvchome", method = RequestMethod.GET)
public String mvchome(Model model) {
    Post post = new Post();

    model.addAttribute("post", post);
    return "mvchome";
}

当我使用/ mvchome转到此页面时,它会以完整的形式正确加载引导程序,但是当我尝试加载/ mvchome /它正确加载表单但引导程序没有显示。

no css page

working css

也不确定是否重要,但我也使用弹簧安全。 只是想知道是否有人知道为什么会这样,以及如何解决它的想法。

由于

***根据建议改进了bootstrap链接,它仍然没有在/ mvchome /

上加载css

另外我在源代码中看了一下chrome,看来如果使用/ mvchome /它会改变资源路径

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

同样的事情发生在我身上......当我开始用百里香的弹簧靴..... 尝试使用以下内容,因为百万富翁在静态文件夹中搜索资源,无需添加&#39; ../'

    <link href="css/bootstrap.css"
    rel="stylesheet" media="screen" />

    <link href="css/bootstrap-theme.css" rel="stylesheet" media="screen" />


    <script type="text/javascript" src="js/jquery-2.2.2.js"></script>


    <script type="text/javascript" src="js/tether.js"></script>

如果它仍然不起作用(我也发生过这种情况)我改变了Spring的安全性,但是对于你我不知道你是否正在使用spring security

答案 1 :(得分:0)

我有同样的问题,我的解决方案是尝试../css/bootstrap.css而不是