10-17 SpringMVC

一、SpringMVC概念

  SpringMVC是spring框架的一个web组件,是三层架构中的表现层框架,他使用MVC架构模式的思想,将web层进行职责解耦,基于请求-响应模型,是一种基于java实现的轻量级web框架,目的是简化开发。

二、MVC架构模式

  MVC架构模式将处理用户请求按照职责划分成为三部分:控制器(controller)、模型(model)、和视图(view)。

三、springMVC的主要特点

  1. 天生与Spring框架集成
  2. 提供强大的约定大于配置的契约式编程支持
  3. 支持参数绑定、数据转换和数据校验
  4. 支持AJAX
  5. 支持Session状态管理
  6. 支持灵活的URL到页面控制的映射
  7. 支持静态资源
  8. 支持拦截器
  9. 支持文件上传
  10. 支持Restful架构风格(前后端分离)

四、SpringMVC拦截器

  拦截器特性类似于过滤器,用于页面控制器/处理器进行的预处理和后处

  4.1SpringMVC拦截器特性

    1.日志记录

      记录请求信息的日志,以便进行信息监控、信息统计以及页面浏览次数

    2.权限检查

      检测登入权限,如果没有登录直接返回到登入或注册页面

    3.性能监控

      可以通过拦截器在进入页面控制器之前记录开始时间,在处理完记录结束时间,从而得到该请求的处理时长

    4.加/解密码

      可以通过拦截器对密码进行加/解密

五、Session状态管理原理

  

  客户端第一次发HTTP请求,web服务器会判断请求中是否有Session ID,如果没有就会创建Session对象并生成唯一Session ID,第一次响应会携带Session ID返回客户端,客户端获取Session ID将其存放在Cookie(缓存)中。
  当客户端第二次发送HTTP请求就会携带Session ID,服务器获取会取出 session id,然后从服务器管理 session 对象的 map 集合里查找 session 对象;这样两次请求/响应共享同一个 session 对象,也就是所谓的一次 session 会话
  Session对象无操作时,默认30分钟自动注销。

本文以学习、研究和分享为主,版权归作者和博客园共有,欢迎转载,如果文中有不妥或者错误的地方还望大神您不吝指出,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
原文地址:https://www.cnblogs.com/bhhh/p/13842156.html