为什么这不起作用?registry.addResourceHandler("/res/**").addResourceLocations("/resources/");
但这可行
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
答案 0 :(得分:1)
请注意 addResourceHandler(String ... pathPatterns)接受您要在页面中使用的任何首选URL路径模式,然后创建一个资源处理程序,用于基于服务提供静态资源你的网址格局。在 addResourceLocations 中,您需要指定资源的具体位置。
因此,当您在资源处理程序中更改URL模式时,请确保 在页面和模板中应用相同的更改以便静态 可以挑选资源。以下示例可以帮助您理解 资源处理程序如何工作。
示例1:在您的情况下,您有:
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
然后,您可以在页面中使用:
<link href="resources/css/main.css" rel="stylesheet" type="text/css"/>
示例2:在您的情况下,您有:
registry.addResourceHandler("/res/**").addResourceLocations("/resources/");
然后,您可以在页面中使用:
<link href="res/css/main.css" rel="stylesheet" type="text/css"/>
示例3:在您的情况下,您有:
registry.addResourceHandler("*.css").addResourceLocations("/resources/css/");
然后,您可以在页面中使用:
<link href="bootstrap.css" rel="stylesheet" media="screen">