Java 无法在Spring4中加载静态文件
我正在尝试创建一个示例SpringMVC项目,但是静态文件没有被加载 加载资源失败:服务器响应状态为404(未找到) 如果有人能帮我解决这个问题,我将不胜感激 配置代码 初始值设定项代码 JSP代码Java 无法在Spring4中加载静态文件,java,spring,Java,Spring,我正在尝试创建一个示例SpringMVC项目,但是静态文件没有被加载 加载资源失败:服务器响应状态为404(未找到) 如果有人能帮我解决这个问题,我将不胜感激 配置代码 初始值设定项代码 JSP代码 学生报名表 更改AddResourceHandler定义,如下所示,然后尝试:- @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResou
学生报名表
更改AddResourceHandler定义,如下所示,然后尝试:-
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
}
可能是你做了一个错误的映射
registry.addResourceHandler("/static/**").addResourceLocations("/static/");
这段代码应该可以用,我在本地机器上测试过。
addResourceLocations(“/static/”)最后一个斜杠是强制的
在sping-core-4.2.5-release.jar中,StringUtils.java包含以下代码
public static String applyRelativePath(String path, String relativePath) {
int separatorIndex = path.lastIndexOf(FOLDER_SEPARATOR);
if (separatorIndex != -1) {
String newPath = path.substring(0, separatorIndex);
if (!relativePath.startsWith(FOLDER_SEPARATOR)) {
newPath += FOLDER_SEPARATOR;
}
return newPath + relativePath;
}
else {
return relativePath;
}
}
如果不以斜杠结束,此方法将返回relativePath
仅供参考,当我查看您的附加图片时,我在您的项目中找到了“bootstrap.min.css”。不要忘记使用正确的文件名。我希望我的建议能帮助你下载F2:如果你让它自己下载,而不是我下载css文件并告诉Spring它们在哪里,您必须让js文件或其他东西发布到web上,这不是您自己控制的。建筑物所有者的目的是如何在Spring MVC项目中加载静态文件。我认为问题出在
addResourceLocations
的代码上,应该是addResourceLocations(“classpath:/static/”代码>请使用url中的上下文路径:
<c:url value='${pageContext.request.contextPath}/static/css/bootstrap.css' />
让我知道这是否有效。更改AddResourceHandler,如
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("/");
}
并更改css文件名“bootstrap.min.css”您的jsp文件位于何处?在WEB-INF
或WEB-INF/{some_other_folder}
中,JSP文件位于'WEB-INF\views\welcome.JSP'您能试试吗
我做了更改,但仍然不起作用,但错误被更改,如下所述'localhost/:10 GET'跟随我的答案都德。噢,很抱歉,不是到F2,而是到F1更改了代码-'registry.addResourceHandler(“/static/**”).addResourceLocations(“/static/”)'仍然不起作用
public static String applyRelativePath(String path, String relativePath) {
int separatorIndex = path.lastIndexOf(FOLDER_SEPARATOR);
if (separatorIndex != -1) {
String newPath = path.substring(0, separatorIndex);
if (!relativePath.startsWith(FOLDER_SEPARATOR)) {
newPath += FOLDER_SEPARATOR;
}
return newPath + relativePath;
}
else {
return relativePath;
}
}
<c:url value='${pageContext.request.contextPath}/static/css/bootstrap.css' />
BPMEI/static/css/bootstrap.css
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("/");
}