现在想搞明白一个问题就是为什么上面的路径是${ctx}/themes/default/easyui.css
这种的格式?而不是${ctx}/webapp/WEB-INF/static/themes/default/easyui.css
应该这样给你解释,pom文件里面红色框内的部分你的工程启动的后,访问页面的基本路径是eui,端口是8080.
jsp文件里面的${ctx}是当前工程的这个上下文的目录,而这些css与js文件,的加载路径就是放在${ctx}这个目录下面的
说的不错!${pageContext.request.contextPath}路径的确是你的应用项目的路径,即/eui路径,你可能仅仅知道路径分为绝对路径和相对路径之分,绝对路径
就是 http://localhost:8080/eui/thems/default/easyui.css这种,这种易于理解。相对路径分为两种,一种前面不带斜杠,一种前面带斜杠,既然是相对路径
,肯定有个参照路径,或者说是基本路径,那么前端的基本路径就是http://localhost:8080/; 那么何为前端,浏览器能解析的代码为前端,html,css,js的基本路径
就是http://localhost:8080,而是相对路径,eui前面的 正斜杠指代http://localhost:8080,
所以路径全称就是http://localhost:8080/eui/thems/default/easyui.css,而我们后端的参照路径http://localhost:8080/eui,所有后端代码中,例如xml文件中的以正斜杠开头的路径,或者java代码控制器Controller中的RequsetMapping中的斜杠 开头,都有默认参照路径
http://localhost:8080/eui, 前后端路径一致,才能请求到资源,显然jsp页面中/thems/default/easyui.css,此斜杠代表
http://localhost:8080/thems/default/easyui.css,与后端不匹配,你都知道缺少了应用名,可是我们应用名是跟项目变的,每次改多麻烦,有没有变量,那就用el表达式取吧,就出现了${pageContext.request.contextPath}
那种不带斜杠的相对路径,其实是项目开发中少用的,参照路径变为:协议+域名+端口号+应用名+请求控制器映射,后面再加没有斜杠的路径
还不明白,百度吧
你用的是spring boot 框架吧?
你的路径问题是你的eui的包是放错地方了,一般静态文件都是放在webRoot下的,例如下图,是放在webRoot/static文件夹下的