Как сказал @ Nancom
<mvc:resources location="/resources/" mapping="/resource/**"/>
Итак, для ясности, наше изображение в
resources/images/logo.png"
Атрибут location тега определяет базовое местоположение каталога статических ресурсов, которые вы хотите обслуживать. Это может быть путь к изображениям, доступный в каталоге src/main/webapp/resources/images/
; Вы можете задаться вопросом, почему мы указали в качестве значения местоположения только / resources / вместо src / main / webapp / resources / images / . Это потому, что мы рассматриваем каталог ресурсов как базовый каталог для всех ресурсов, у нас может быть несколько подкаталогов в каталоге ресурсов для размещения наших изображений и других статических файлов ресурсов.
Второй атрибут, mapping , просто указывает путь запроса, который необходимо сопоставить с этим каталогом ресурсов. В нашем случае мы присвоили /resources/**
в качестве значения отображения. Таким образом, если любой веб-запрос начинается с пути запроса /resource
, он будет сопоставлен с каталогом ресурсов, а символ /**
указывает на рекурсивный поиск любых файлов ресурсов в каталоге базовых ресурсов. .
Так что для URL, как
http://localhost:8080/webstore/resource/images/logo.png
. Таким образом, при обслуживании этого веб-запроса Spring MVC будет рассматривать /resource/images/logo.png
в качестве пути запроса. Таким образом, он попытается сопоставить /resource
с базой ресурсов, ресурсами. В этом каталоге он попытается найти оставшийся путь URL-адреса, который равен /images/logo.png
. Поскольку у нас есть каталог images в каталоге ресурсов, Spring может легко найти файл изображения из каталога images.
So
<mvc:resources location="/resources/" mapping="/resource/**"/>
дает нам данные [запросы] -> [сопоставление ресурсов]:
http://localhost:8080/webstore/resource/images/logo.png
-> поиск в resource/images/logo.png
http://localhost:8080/webstore/resource/images/small/picture.png
-> поиск в resource/images/small/picture.png
http://localhost:8080/webstore/resource/css/main.css
-> поиск в resource/css/main.css
http://localhost:8080/webstore/resource/pdf/index.pdf
-> поиск в resource/pdf/index.pdf