我尝试从resources / static文件夹中为不同的页面添加css和js文件。我有两个页面index.jsp和validate-configuration.jsp。对于index.jsp,添加css和js文件的工作正确(见下图)。
但是当我去验证 - configuration.jsp时,css和js文件不能下载(见下图)。
从控制台输出: 我们可以看到相对路径的变化。如果早期就像(index.jsp):http://localhost:8090/static/style.css http://localhost:8090/static/js/jquery-2.1.1.min.js 然后它变成这样: http://localhost:8090/validation/static/style.css http://localhost:8090/validation/static/js/jquery-2.1.1.min.js Index.jsp html代码:
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="page" tagdir="/WEB-INF/tags" %>
<html lang="en">
<head>
<link rel="icon" type="image/x-icon" href="static/favicon.ico">
<link rel="stylesheet" href="static/style.css">
<script type="text/javascript" src="static/js/jquery-2.1.1.min.js"></script>
</head>
<body>
</body>
</html>
验证-configuration.jsp:
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="page" tagdir="/WEB-INF/tags" %>
<html lang="en">
<head>
<link rel="icon" type="image/x-icon" href="static/favicon.ico">
<link rel="stylesheet" href="static/style.css">
<script type="text/javascript" src="static/js/jquery-2.1.1.min.js">
</script>
</head>
<body>
</body>
</html>
静态资源的文件夹是src / main / resources / static /.
资源的Yml配置:
mvc:
static-path-pattern: /static/**
项目结构:
[![在此处输入图像说明] [4]] [4]
我很感激您的建议。
答案 0 :(得分:0)
在Spring-boot文档中,您可以读取默认情况下Spring-boot读取静态资源的位置。
默认情况下,Spring Boot将从类路径中的/ static(或/ public或/ resources或/ META-INF / resources)目录或ServletContext的根目录中提供静态内容。它使用Spring MVC中的ResourceHttpRequestHandler,因此您可以通过添加自己的WebMvcConfigurerAdapter并覆盖addResourceHandlers方法来修改该行为。 如果您将静态文件的位置更改为默认文件,则应该可以通过/css/style.css访问它们
答案 1 :(得分:0)