最近学习spring mvc,期间引入静态的css和js的时候遇到了问题,现在记录并总结一下.
spring mvc 访问静态文件主要有两个障碍:
1. spring mvc 默认的权限设置导致无法访问;
使用如下配置,并在webapp下新建static目录,将css和js分别放在static下的对应目录中;
<!-- 静态资源 -->
<mvc:resources mapping="/static/**" location="/WEB-INF/static/"/>
目录结构如下:
2. 没有设置正确的路径
页面里面使用如下方式访问:
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/bootstrap.css">
<!-- Font Awesome -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/font-awesome.min.css">
<!-- Ionicons -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/ionicons.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/AdminLTE.min.css">
<!-- AdminLTE Skins. We have chosen the skin-blue for this starter
page. However, you can choose any other skin. Make sure you
apply the skin class to the body tag so the changes take effect. -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/css/skin-blue.min.css">
在使用中得知,
${pageContext.request.contextPath} 等价于/项目名,所以表单和ajax的请求也可以参照使用该路径.