Я пытаюсь добавить файлы css и js из папки resources / static для разных страниц. У меня есть две страницы index.jsp и validate-configuration.jsp. Для index.jsp добавление файлов css и js работает корректно (см. Рисунок ниже).
Но когда я захожу в validate-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>
Validate-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]
mvc: static-path-pattern: /static/**
Буду признателен за ваши предложения.
Я не знаю, почему я не могу добавить изображение структуры проекта. Я делаю это здесь:
В документации по Spring-boot вы можете прочитать, где Spring-boot читает статические ресурсы по умолчанию.
По умолчанию Spring Boot будет предоставлять статический контент из каталога / static (или / public или / resources или / META-INF / resources) в пути к классам или из корня ServletContext. Он использует ResourceHttpRequestHandler из Spring MVC, поэтому вы можете изменить это поведение, добавив свой собственный WebMvcConfigurerAdapter и переопределив метод addResourceHandlers. Если вы измените расположение ваших статических файлов на местоположение по умолчанию, вы сможете получить к ним доступ через /css/style.css
Здесь вы можете найти простую структуру проекта