1.controller的生命周期

  1. spring框架默认为单例模式,会使数据之间的传递互相影响,而springMVC给我们提供了request与session两个,request每次请求就会产生一个单例,会导致数据比较多,session每次回话才会产生一个请求,所以我们一般情况都是用session比较多,它们两个具体的表现是出现在方法上的注解@requestscope或者@scope("request")和@sessionscope或者@scope("session")
  2. 当然因为他是后来才加入的注解,所以必须配置springMVC的扩展,我们需要在web。xml中配置<mvc:annotation-driven />

2.一些相关的注解配置及说明

  1. 放开所有的静态资源<mvc:default-servlet-handler/>
  2. 开放指定路径

    location:表示访问的静态文件的目录

    mapping:表示访问的规则

    <mvc:resources location="/image/" mapping="/image/**"></mvc:resources>

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

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

3.springMVC对json的支持

  1.springMVC可以把所有的json语句和json对象进行强制转换,当然需要先导入支持其的相对应包

   

  2.发送过来的json请求必须通过@requestBody注解对传过来的json进行强制转换为json对象返回的直接就是json对象

4.spring中的拦截器

  1. 拦截器和过滤器的基本功能是一样的,但是过滤器拦截的是请求路径,而拦截器是拦截的相对应映射方法路径
  2. 拦截器因为本就属于spring框架中的功能,所以spring一些需要的组件功能还是可以使用,而过滤器会把这些全都给拦截了
  3. 在SpringMVC里面,拦截器一定要实现HandleInterceptor,所以我们配置拦截器的时候必须继承HandleInterceptor这个接口类

  4. 拦截器的spring相关配置

    4.1既然拦截器是基于spring框架中当然需要先配置一下这个拦截器的spring的配置,首先还是必须先保证springMVC的那几个包的添加

     并且我们要先了解一下它的一些通配符,以达到精确拦截的要求。  ?  可以匹配任何一个字符  * 匹配任何长度的字符  **  匹配多级目录的路径

  5.

<!-- 配置拦截器 -->

<mvc:interceptors>

<!-- 配置指定的拦截器 -->

<mvc:interceptor>

<!-- 过滤规则,放在最前面 -->

<mvc:mapping path="/**"/>

<!-- 排除的过滤规则,放在第二,不包括 -->

<!--注意,如果加了命名空间 -->

<!-- 规则:

1.**不能加任何的字符,表示通配多级目录

2.多个字符*号. 表示通配同一级目录的多个字符

3.排除的范围小于拦截的范围.

-->

<mvc:exclude-mapping path="/user/login*"/>

<!-- 对象配置放在最后 -->

<bean class="cn.gzsxt.interceptor.MyInterceptor"></bean>

</mvc:interceptor>

</mvc:interceptors>

springMVC中一些功能的更多相关文章

  1. 解决springmvc中文件下载功能中使用javax.servlet.ServletOutputStream out = response.getOutputStream();后运行出异常但结果正确的问题

    问题描述: 在springmvc中实现文件下载功能一般都会使用javax.servlet.ServletOutputStream out = response.getOutputStream();封装 ...

  2. springmvc中RequestMapping的解析

    在研究源码的时候,我们应该从最高层来看,所以我们先看这个接口的定义: package org.springframework.web.servlet; import javax.servlet.htt ...

  3. SpringMVC 中HttpMessageConverter简介和Http请求415 Unsupported Media Type的问题

    一.概述: 本文介绍且记录如何解决在SpringMVC 中遇到415 Unsupported Media Type 的问题,并且顺便介绍Spring MVC的HTTP请求信息转换器HttpMessag ...

  4. SpringMvc中Interceptor拦截器用法

    SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户是否登陆等. 一. 使用场景 1 ...

  5. JavaEE开发之SpringMVC中的路由配置及参数传递详解

    在之前我们使用Swift的Perfect框架来开发服务端程序时,聊到了Perfect中的路由配置.而在SpringMVC中的路由配置与其也是大同小异的.说到路由,其实就是将URL映射到Java的具体类 ...

  6. JavaEE开发之SpringMVC中的自定义拦截器及异常处理

    上篇博客我们聊了<JavaEE开发之SpringMVC中的路由配置及参数传递详解>,本篇博客我们就聊一下自定义拦截器的实现.以及使用ModelAndView对象将Controller的值加 ...

  7. JavaEE开发之SpringMVC中的静态资源映射及服务器推送技术

    在上篇博客中,我们聊了<JavaEE开发之SpringMVC中的自定义拦截器及异常处理>.本篇博客我们继续的来聊SpringMVC的东西,下方我们将会聊到js.css这些静态文件的加载配置 ...

  8. JavaEE开发之SpringMVC中的自定义消息转换器与文件上传

    上篇博客我们详细的聊了<JavaEE开发之SpringMVC中的静态资源映射及服务器推送技术>,本篇博客依然是JavaEE开发中的内容,我们就来聊一下SpringMVC中的自定义消息转发器 ...

  9. SpringMVC中使用Swagger2整合

    Swagger2是什么 Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件. Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 W ...

随机推荐

  1. 实践作业4---DAY3阶段二。

    第二阶段是用户调研,我们小组选择了一个5班的同学,作为采访对象.采访比较详实,但是样本太少,不太有说服力. 具体采访详情如下: 问:请问您使用喜欢发表Blog么? 答:肯定有啊. 问:都用什么网站发表 ...

  2. IE6,7,8在boostrap中兼容h5和css3

    IE6.7.8版本(IE9以下版本)浏览器兼容html5新增的标签,引入下面代码文件即可: <script src="https://oss.maxcdn.com/libs/html5 ...

  3. IDEA设置与快捷键记录

    一:代码提示大小写设置 二:设置代码检查等级 IntelliJ IDEA 对于编辑大文件并没有太大优势,很卡,原因就是它有各种检查,这样是非常耗内存和 CPU 的,所以为了能加快大文件的读写,我一般会 ...

  4. [ASP.NET MVC 小牛之路]03 - Razor语法(转)

    出处:http://www.cnblogs.com/willick/p/3224144.html Razor是MVC3中才有的新的视图引擎.我们知道,在ASP.NET中,ASPX的视图引擎依靠< ...

  5. [GO]go语言实现区块链工作证明(pow)原理

    package main import ( "math/big" "bytes" "math" "crypto/sha256&qu ...

  6. Visual assint x(转)

    最新破解版:Visual Assist X 10.8.2001 破解版 支持VC2013及以下版本 安装步骤: 1. 双击运行VA_A_Setup2001并安装 2. 双击运行Visual Assis ...

  7. javascript总结20: 前端必读,浏览器内部工作原理(转)

    目录 一.介绍 二.渲染引擎 三.解析与DOM树构建 四.渲染树构建 五.布局 六.绘制 七.动态变化 八.渲染引擎的线程 九.CSS2可视模型 英文原文:How Browsers Work: Beh ...

  8. C#中继承和构造函数

    一个类继承自另外一个类,他们的构造函数改怎么办? 首先必须先声明:构造函数是不能继承的 我们先看一段代码:第一段代码没有构造函数,第二段有一个,第三段有两个.从他们的MSIL可以看出,有几个构造函数就 ...

  9. 启动samba服务--ubuntu 14.04

    1. 修改配置文件 /etc/samba/smb.conf文件末尾添加 [homes] comment = Home Directories browseable = yes read only = ...

  10. HashMap的小试牛刀

    HashMap的介绍 import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.ut ...