在使用SpringMVC进行开发的时候,遇到了以下代码不能执行的情况。而且我已经正确导入了JQuery框架。

<script type="text/javascript">
$(function(){
alert("你好啊");
})
</script>

明明记得之前是可以执行的为什么现在却不能了。在浏览器的开发这工具上只能看到 SyntaxError: expected expression, got '<'[详细了解] 这个报错。

网上看了很多文章,自己也尝试了各种办法还是不能解决。整整耗了一天。最后我使用了最笨的办法。既然是之前可以执行然后因为我修改了某些地方导致不能执行。那我只要找到由可以执行变成不可以执行的那两个相邻的版本,对比这两个版本的不同。就可以找出来是什么原因导致的了。

于是我就从我这四百个版本的代码当中使用二分法。将代码检出,运行,再检出运行(真的是太费劲了),费了九牛二虎之力终于找到了。这两个相邻的版本只有一个字母的差别。

这是前一个版本

这是后一个版本。

真相大白,由于之前做好登陆功能后,嫌做测试的时候经常需要登录,所以就把拦截所有请求的这一个设置随便添加了一个字母上去,变成了只拦截这个不存在的请求,也就相当于所有的请求都不拦截。所以我的JQuery框架源代码没有被拦截。此时我上面贴的JQuery代码是可以运行的等到后来我又把它改为拦截所有请求(然而此时我还不知道从现在开始,我上面贴的那段JQuery代码已经不能运行了)。所以后面我一直开发了两百多个版本以后才发现。此时的我恍然大悟,终于知道之前看到的文章说是Ajax不能执行是因为静态资源被拦截了(当时还不相信我的是静态资源被拦截导致的,因为我这个没有Ajax啊)。

  所以,当知道问题的原因后一切都可以解决了。不知道问题原因的问题才是最难解决的问题。为了解决问题搜了不拦截静态资源的文章。这里找到一篇还不错。

这是原文链接 https://www.cnblogs.com/wyb628/p/6813985.html

我把文章截图放下面

一、

二、

解决SpringMVC拦截器拦截静态资源的问题。的更多相关文章

  1. spring boot 添加拦截器的简单实例(springBoot 2.x版本,添加拦截器,静态资源不可访问解决方法)

    spring中拦截器主要分两种,一个是HandlerInterceptor,一个是MethodInterceptor 一.HandlerInterceptor HandlerInterceptor是s ...

  2. spring boot 2.x拦截器导致静态资源404终极解决办法

    首先添加application文件static路径,我的是yml文件 spring: mvc: static-path-pattern: /static/**然后注册拦截器类如下方法; @Overri ...

  3. springboot 入门八-自定义配置信息(编码、拦截器、静态资源等)

    若想实际自定义相关配置,只需要继承WebMvcConfigurerAdapter.WebMvcConfigurerAdapter定义些空方法用来重写项目需要用到的WebMvcConfigure实现.具 ...

  4. springboot2.0+ 使用拦截器导致静态资源被拦截

    在spring1.0+的版本中,配置拦截器后是不会拦截静态资源的.其配置如下: @Configuration public class WebMvcConfig extends WebMvcConfi ...

  5. spring拦截器排除 静态资源

    拦截器需要排除静态资源,不然会造成资源浪费 <!-- 拦截器 --> <mvc:interceptors> <!-- 使用bean定义一个Interceptor,直接定义 ...

  6. Springboot2.1.1下的自定义拦截器而静态资源不能访问的问题

    1.项目结构 2.自定义拦截器 public class LoginHandlerlnterceptor implements HandlerInterceptor { //目标方法执行之前 @Ove ...

  7. 防止SpringMVC拦截器拦截js等静态资源文件

    SpringMVC提供<mvc:resources>来设置静态资源,但是增加该设置如果采用通配符的方式增加拦截器的话仍然会被拦截器拦截,可采用如下方案进行解决: 方案一.拦截器中增加针对静 ...

  8. SpringMVC处理请求释放静态资源的三种方式

    方式一 在SpringMVC的配置文件中添加如下语句 <mvc:default-servlet-handler/> 说明:当SpringMVC前端控制器对静态资源进行拦截后,在通过处理器映 ...

  9. SpringMVC使用可以访问静态资源,但是导致Controller访问失败

    如果在web.xml 拦截配置如下: <!-- Spring MVC servlet --> <servlet> <servlet-name>SpringMVC&l ...

  10. Springboot通过拦截器拦截请求信息收集到日志

    1.需求 最近在工作中遇到的一个需求,将请求中的客户端类型.操作系统类型.ip.port.请求方式.URI以及请求参数值收集到日志中,网上找资料说用拦截器拦截所有请求然后收集信息,于是就开始了操作: ...

随机推荐

  1. 数据链路层差错检测之循环冗余检验CRC

    引用https://blog.csdn.net/wenqiang1208/article/details/71641414 为什么引入CRC 现实的通信链路都不会是理想的.这就是说,比特在传输的过程中 ...

  2. [PY3]——heap模块 和 堆排序

    heapify( ) heapify()函数用于将一个序列转化为初始化堆 nums=[16,7,3,20,17,8,-1] print('nums:',nums) show_tree(nums) nu ...

  3. org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'xxxx' is not present

    org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'xxx ...

  4. 查找正序排列的List中缺失的日期数据的一个算法

    Code: public List<DateTime> getMissDateData() { DateTime[] keys = { DateTime.Now.AddDays(-5), ...

  5. tomcat 修改 编码

    <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" ...

  6. redis的持久化方式

    redis有两种持久化方式,第一种是基于快照的持久化方式,第二种是基于文件追加的持久化方式 一.基于快照的持久化 1.修改redis.conf配置文件,开启基于快照的持久化方式 2.修改持久化文件存放 ...

  7. 嵌套Golang对象的初始化

      比如有这样一个对象: type ProductConfig struct {     Site map[string]string } 对应的初始化可以如下写: var pc ProductCon ...

  8. 深入理解ES6之函数

    一:关于函数的参数: 可以接受任意数量的参数而无视函数声明的参数数量是js函数的独特之处. 1:参数默认值 ES6之前做法: function makeRequest(url,timeout,call ...

  9. spring cglib 与 jdk 动态代理

    1. 概述 JDK动态代理是利用java反射机制 生成一个实现接口的匿名类, 在调用具体方法前调用InvocationHandler来处理 Cglib动态代理是 利用asm开源包 把被代理类的clas ...

  10. Bzoj3510:首都

    Sol \(LCT\)动态维护树重心 方法一 因为只有加边,所以可以暴力启发式合并,维护重心 维护子树信息,子树大小不超过一半 复杂度两只\(log\) 方法二 扣出两个重心的链,链上二分找 每次\( ...