首先看个index.jsp首页的代码


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>主页</title><script src="js/jquery.min.js"></script><script>$(function(){$("#btn").click(function(){alert("hello btn");});});</script></head><body><br/><button id="btn">提交</button></body>
</html>

页面代码很简单,就一个简单的按钮,点击弹出“hello btn”这样一个事件。但在没有配置静态资源过滤器的情况下,springMVC会拦截掉jquery.min.js文件的加载,让这样简单的一个需求都实现不了。

<servlet><servlet-name>DispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping><servlet-name>DispatcherServlet</servlet-name><url-pattern>/</url-pattern>
</servlet-mapping>

在上述DispatcherServlet的配置中,我们默认该控制器会控制所有资源,所有请求。页面在加载过程中,需要请求静态资源的js文件,而这一请求被该控制器所拦截,所以demo的效果就是点击按钮没有任何反应,跟没有引入js文件是一个效果。

    <mvc:resources mapping="/images/**" location="/images/" /><mvc:resources mapping="/js/**" location="/js/" /><mvc:resources mapping="/css/**" location="/css/" />

在springmvc.xml文件中加入以上三个资源映射,当然具体的文件名可以与上面的不一样。这样可以在加载js文件的时候,跳过DispatcherServlet的控制。当然还有其它方法可以实现,比如在DispatcherServlet前加上defaultServlet,先对js等静态资源进行拦截,这样该类请求就不会交由springmvc处理了。

这里提一下误区,上面提到的js/css/images三个Directory静态资源目录,千万千万不能建在WEB-INF目录下,这种目录在配置文件中识别不了,并且mvc:resources会显示红色。直接创建在webapp下面,让该类目录与WEN-INF平级。
设置有效的资源目录,在springmvc.xml文件中不会出现红色的报错,另外,映入的js文件,通过ctrl+鼠标左键可以直接访问查看。

springMVC设置静态资源过滤器,过滤js、css、images等静态资源相关推荐

  1. css实现贝塞尔静态图_使用高级CSS条形图构建静态投资组合

    css实现贝塞尔静态图 在上一篇文章中 ,我向您展示了如何构建漂亮的全屏投资组合页面. 在该教程中,我们还学习了如何创建响应式CSS柱形图. 在本教程中,我们将构建另一个吸引人的静态投资组合页面,这次 ...

  2. html设置文本框只读属性,juqery/js/css设置文本框只读属性的方法

    一.设置HTML表单文本框为只读的几种方式 有时候,我们希望表单中的文本框是只读的,让用户只能查看信息而不能修改其中的信息,使 input type="text" name=&qu ...

  3. ANT自动化压缩合并JS/CSS和更改版本号

    2019独角兽企业重金招聘Python工程师标准>>> 转载至:http://blog.sina.com.cn/s/blog_8564e55a01011fhw.html 最近做到了前 ...

  4. springmvc如何访问静态文件,例如jpg,js,css

    你怎么DispatcherServlet拦截"*.do"这有一个后缀URL.就不存在訪问不到静态资源的问题.   假设你的DispatcherServlet拦截"/&qu ...

  5. golang打包HTML为Android,使用Go开发Web服务,并打包html/js/css等静态资源文件

    Go的高性能,使它天生适合开发io方面的服务,Web服务当然不再话下.同时,Go编译后生成的单文件不是字节码,而是对应平台的机器码,因此它效率更高.资源占用更低. 为了更好的进程程序管理,移动程序时更 ...

  6. Spring3中js/css/jpg/gif等静态资源无法找到(No mapping found for HTTP request with URI)问题解决...

    最近项目中使用到Spring3,在感叹Spring3注解配置清爽的同时竟然出现了这个不和谐的事情,实在无法忍受 问 题:部署项目后程序加载或用浏览器访问时出现类似的警告,2011-01-19 10:5 ...

  7. Spring3中js/css/jpg/gif等静态资源无法找到(No mapping found for HTTP request with URI)问题解决--转载...

    原文地址:http://www.programgo.com/article/96083031845/ 最近项目中使用到Spring3,在感叹Spring3注解配置清爽的同时竟然出现了这个不和谐的事情, ...

  8. Spring3中js/css/jpg/gif等静态资源无法找到(No mapping found for HTTP request with URI)问题解决(转)...

    最近项目中使用到Spring3,在感叹Spring3注解配置清爽的同时竟然出现了这个不和谐的事情,实在无法忍受 问题:部署项目后程序加载或用浏览器访问时出现类似的警告,2011-01-19 10:52 ...

  9. 解决SSM项目下静态资源(img、js、css)无法引用的问题

    解决SSM项目下静态资源(img.js.css)无法引用的问题 参考文章: (1)解决SSM项目下静态资源(img.js.css)无法引用的问题 (2)https://www.cnblogs.com/ ...

最新文章

  1. Java面试通关要点汇总集之核心篇参考答案
  2. UVA11722(见面概率)
  3. 在 Scale Up 中使用 Health Check - 每天5分钟玩转 Docker 容器技术(145)
  4. inux时间问题两篇
  5. 首次落地中国大陆的OpenInfra:中国对于开源做出的贡献力量已不可忽视
  6. 【Qt】QTableView中嵌入复选框CheckBox 的四种方法总结
  7. 软件版本控制Subversion和Git
  8. iOSpush过后返回多级界面
  9. 自然语言处理 -- NLP作业 1 :训练词向量
  10. 【Windows MTU】Windows上最大传输单元MTU值的查看和设置
  11. 程序员被离职赔偿18万,房贷八千,只够还一年半,领导:回来上班
  12. ORACLE语句基本优化
  13. PRACH, preamble, RO 的关系与区别
  14. scss 转换成css,如何将scss转换为css
  15. 前端打包工具webpack和Vite
  16. linux egrep命令使用示例
  17. java71-GUL边界布局管理器
  18. [ WARN] [1588040435.867625184]: MessageFilter [target=odom ]: Dropped 97.37% of messages so
  19. 安装spconv踩的坑
  20. 该不该用存储过程?什么情况下使用存储过程?

热门文章

  1. 如何制作出色的R可重现示例
  2. 如何使用extern在源文件之间共享变量?
  3. win11的附件在哪 windows11附件的查看方法
  4. TCP/IP:ARP与RARP详细解析
  5. Arduino采集Microzone遥控器信号(ROSMicrozoneBridge)
  6. docker es持久化_docker如何保持数据持久化?其实可以考虑通过数据卷挂载的方式~...
  7. r语言清除变量_R语言:结构方程模型、潜变量分析
  8. 朴素贝叶斯-垃圾邮件(中文的)处理
  9. 求2014年九月国二c语言考试小抄,2014年全国计算机等级二级C语言上机考前预测(含答案)17...
  10. MySQL——优化ORDER BY语句