mvc中+css,搞定SpringMVC中的css及js引用路径

相信初入Java的的童鞋们都会遇到这个问题,那么今天我就带你们回顾一下我所掉过的坑。css

首先,环境说明:html

IDEA 开发工具,以引入Boostrap的css及js为例。java

第二部:新建工程,利用idea提供的框架新建工程仍是很方便的(可是也有坑爹的地方,后面会讲)。jquery

好了,上个图吧,如下是个人项目目录;web

a98328b87f4c48d3b44670f231eaa59a.gif

有人说为何把全部静态资源不放到同一个目录下,嗯,说的有道理,是能够那样作,可是我这要作的话也有好处,那就是引用的时候能够直接写成下面这样,由于jsp中默认是从根目录开始的,而不是根据你的jsp文件的位置spring

这样引用在Windows下确定是没有问题的,Linux还没切换,等之后再试,有试过的也能够告诉我一下。bootstrap

可是有个问题,就是Idea会提示找不到文件,不过运行起来是能够正常加载,因此后来我改为了下面这样:浏览器

这样内心一会儿就有底了吧,由于这其实就能够从程序根上开始找你的文件了。spring-mvc

说到这里,有个坑给你们填一波儿,pageContext.request.contextPath 开始个人程序死活是不识别,我在度娘那儿搜了半天,才有我的说出了关键,Idea默认生成的web.xml文件不支持!!尼妹啊!这也能够???mvc

/p>

"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

"http://java.sun.com/dtd/web-app_2_3.dtd" >

看看你的是否是也是上面那样,版本写的2.3呢?赶忙改了吧,下面是正确的

xmlns="http://java.sun.com/xml/ns/javaee"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

id="WebApp_ID" version="3.0">

至此,${pageContext.request.contextPath}就能够用了,固然你须要先引入jstl,你懂得。

那么下面才是常规流,springmvc拦截器配置是这样的,本文只说spring mvc相关的,别的请见其余文章。

spring-mvc

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:spring_config.xml

spring-mvc

/

若是你也是按上面这样写的,那你必然会有以下问题出现,就是静态资源也被拦截了,不能直接访问,这确定不是咱们想要的,

那就须要对静态资源进行设置,有两种方式:1.修改web.xml文件 2. 修改spring-config.xml文件(推荐)

我的喜欢第二种方式,第一种也很简单,可是须要按不一样的文件类型进行过滤,我以为麻烦,由于你也不肯定你会用到哪些文件,css和js还好,图片呢??好多种jpg,peng吧啦吧啦都要写上,可是你的项目里可能都没有,为了保险你得写吧?

第二种方式是按目录:在spring配置文件中加入以下说明,指定目录下是静态资源(这个好像是对Spring有版本要求,3.0以上确定没问题),废话少续,上代码:

这样,显得个人目录建的不是很合适了,毕竟若是放到一个统一的文件夹下只须要写一条便可,没办法,我仍是喜欢这样,更清晰,不喜勿喷。

这样下来咱们就能够正常加载你的静态资源文件了。

说一下其余的坑吧,万一有小伙伴遇到呢,至少网上我是没搜到有用的解决办法。

1. 生成时部分子文件夹下的js或css没有生成到target目录,解决办法:右击相关文件夹标记为可用。

2.web.xml文件的位置最好不要动,不信你能够试试,哈哈

3. 若是仍是不能加载,要学会用浏览器调试,F12全部浏览器都支持,若是没有加载上会有提示,我以前由于更改了jquery.js的名字形成了Maven没有及时更新,致使没法加载,浏览器提示的很对呀,后来几经周转才发现了这个问题,清理并从新生成,搞定!!

以上,纯属我的学习感悟,欢迎指正。转载请注明出处,谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值