SpringMVC流程/原理
  • 用户请求到DispatcherServlet
  • DispatcherServlet收到请求调用HandlerMapping处理器映射器
  • HandlerMapping根据请求url找到具体的处理器,生成处理器对象及处理器拦截器一并放回给DispatcherServlet
  • DispatcherServlet通过HandlerAdapter处理器适配器调用处理器
  • 执行处理器==controller
  • Controller返回ModelAndView,HandlerAdapter将结果返回给DispatcherServlet
  • DispatcherServlet将ModelAndView传给ViewReslover视图解析器
  • ViewReslover解析后返回具体的View
  • DispatcherServlet对view进行渲染
  • DispatcherServlet响应用户

流程图:


乱码问题
  • Post乱码 : 配置过滤器ChatcterEncodingFilter
  • Get乱码 : tomcat配置编码与工程编码一直或代码中对参数进行重新编码

重定向和转发

在返回值前面加“redirect” 或 “forward”

return "forward:/跳转的页面或路由";

重定向和转发的区别
  • 转发比重定向快,因为重定向要经过客户端
  • 要重定向到另外一个网站,转发无法做到
  • 理解为: 转发为内部的请求转发(一次请求),而重定向的话需要再一次请求

全局异常

自定义实现spring的全局异常解析器HandlerExceptionResolver


SpringBoot 和 SpringMVC
  • 约定优于配置,降低搭建复杂度
  • 大部分第三方配置库开箱即用
  • 内置微型tomcat,无需再装tomcat进行部署项目,maven打包jar就可以直接运行项目

Spring是引擎
SpringMVC 是基于Spring的一套MVC框架
SpringBoot 是基于Spring4的条件注册的一套快速开发整合包

SpringMVC 常见面试问题相关推荐

  1. js 计算任意凸多边形内最大矩形_题库 | 计算机视觉常见面试题型介绍及解答 第 7 期...

    - 计算机视觉 -为什么说 Dropout 可以解决过拟合?(1)取平均的作用: 先回到标准的模型即没有 dropout,我们用相同的训练数据去训练 5 个不同的神经网络,一般会得到 5 个不同的结果 ...

  2. Hive常见面试问题(持续更新)

    Hive常见面试问题 目录 Hive 内部表和外部表的区别,以及各自使用于哪种环境?Hive和传统数据库的区别? HiveRc 文件? Hive 分区? Hive 分区过多有何坏处以及分区时的注意事项 ...

  3. 面经——C/C++常见面试知识点总结附面试真题

    参考:C/C++ 面试题 作者:zhaouc 发布时间: 2015-02-15 15:51:00 网址:https://blog.csdn.net/zhaouc/article/details/438 ...

  4. java面试常见面试问题_Java面试准备:15个Java面试问题

    java面试常见面试问题 并非所有的访谈都将重点放在算法和数据结构上-通常,访谈通常只侧重于您声称是专家的语言或技术.在此类访谈中,通常没有任何"陷阱"问题,而是它们要求您利用内存 ...

  5. spring常见面试问题_Spring面试问题

    spring常见面试问题 另外,请查看我们最新的文章69Spring面试问题与解答–最终清单 . 1)什么是春天? 回答: Spring是控件和面向方面的容器框架的轻量级反转. 2)解释春天? 回答: ...

  6. 【C++基础】常见面试问题(二)

    1. 指针和引用的区别 指针保存的是所指对象的地址,引用是所指对象的别名,指针需要通过解引用间接访问,而引用是直接访问 指针可以改变地址,从而改变所指的对象,而引用必须从一而终: 引用在定义的时候必须 ...

  7. Java常见面试知识点:继承、接口、多态、代码块

    问题:Java常见面试知识点:继承.接口.多态.代码块 答案: 1.继承 继承中构造方法的访问特点 子类中所有的构造方法默认都会访问父类中无参的构造方法 为什么? • 子类在初始化的时候,有可能会使用 ...

  8. 视频教程:Java常见面试题目深度解析!

    视频教程:Java常见面试题目深度解析! Java作为目前比较火的计算机语言之一,连续几年蝉联最受程序员欢迎的计算机语言榜首,因此每年新入职Java程序员也数不胜数.很多java程序员在学成之后,会面 ...

  9. Linux底层IIC 总线的理解、调用函数以及常见面试问题

    对 IIC 总线的理解.调用函数以及常见面试问题 一.IIC 总线概述: IIC 即Inter-Integrated Circuit(集成电路总线) I2C总线是PHLIPS公司推出的一种串行总线, ...

最新文章

  1. python内置库之学习ctypes库(一)
  2. windows7 php 无法启动服务,windows update服务无法启动怎么解决?
  3. anki 插入表格_另一种把思维导图和excel表格放入anki的方式
  4. vba 窗体单选框怎么传回sub_VBA之EXCEL应用
  5. 怎么将py文件转成dll_怎么将多个PPT同时转成PDF?
  6. 网络登录_发布猫系统登录免费网络推广-绥芬河推广资讯
  7. Win7系统电脑修改不了文件属性怎么办
  8. 怎么取消自动格式化_iPhone自动扣费怎么取消?App Store、微信、支付宝关闭自动扣费教程...
  9. python多线程编程技术主要应用_python多线程,多进程编程。
  10. Dockerfile制作自定义镜像
  11. 简单典型二阶系统_反馈控制系统的性能
  12. 数字影像系统 接收服务器,影像存储与传输系统(PACS)
  13. pe显示linux分区文件,找到了linux分区顺序错乱修复方法
  14. mysql查看列名_MySQL:从查询中获取列名或别名
  15. 查询ISBN号验证ISBN号调用api接口查询书籍信息
  16. MapReduce 与 Database 的乌龙战
  17. 用canvas写个接水管小游戏
  18. Android 框架MVP
  19. 【Linux】alias及设置
  20. 服务器主板性能排行榜,四路绝佳!华硕服务器主板性能强劲

热门文章

  1. python使用jieba模块进行文本分析和搜索引擎推广“旅行青蛙”数据分析实战
  2. android 打开免打扰模式,开启安卓手机免打扰模式的教程
  3. 奢侈品养护小程序开发
  4. 详解美摄汽车图像与视频处理方案(一)
  5. 电信物联卡网络怎么样_三大运营商物联卡有什么不同,选择哪家的最实惠!
  6. C语言算法题 合并两个数组并排序
  7. 【实战】我背着女朋友,用 Python 偷偷抓取了她的行踪
  8. 如何防止浏览器指纹关联
  9. 苹果ios8_崩溃大陆+饥荒+缺氧的集合元素单机苹果手游,真香还是辣鸡?
  10. 如何计算环境遗传相关 | 育种中的基因与环境互作