本来想着自己写个博客,还在想着service怎么搞得时候.....结果开头就css,js,图片等静态资源的请求路径就出了问题,具体如下:
image.png在@RequestMapping("/Blog")中设置了一个Blog
结果在浏览器中就出现了↓ image.png
你看这个Blog是又大又圆。。。想破了头没想出来啥情况,配置也没问题,终究是自己才疏学浅。(页面还没来得及改,自己实在看到前端页面布局脑壳疼,download了大佬的页面https://www.yangqq.com/
)
本着面向搜索引擎编程的态度,搜索了半天终于看到了一个类似的→就是他https://my.oschina.net/u/2331292/blog/1809696
然后就又抱着试试看的心理,加上了这个 image.png
具体方法就是:
原因:jsp页面中路径不以“/”开头,会当做相对路径处理。
通过controller访问返回的jsp视图,是由你的服务器(tomcat)解析。
所以其(jsp)相对路径就会是服务器的路径。而不是其所在静态资源位置的相对路径。
解决办法:
1:改为绝对路径。
<script src="/js/jquery.min.js"></script>
由于我不是jsp页面所以就采用了原文中的方法1
方法2:
2:页面顶部获取request.getContextPath() 获取站点根路径
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
然后再引用静态资源前面加上<$=path %>如下
<link rel="stylesheet" type="text/css" href="<%=path %>/css/magnific-popup.css">
万事开头难,然后中间难,结尾更难,放弃容易~~~
网友评论