zoukankan
html css js c++ java
Spring MVC 工作流程
图一
图二
Spring工作流程描述
1.用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获;
2.DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,
调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),
最后以HandlerExecutionChain对象的形式返回;
3.DispatcherServlet 根据获得的Handler,选择一个合适的HandlerAdapter。
(附注:如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法)
4. 提取Request中的模型数据,填充Handler入参,开始执行Handler(Controller)。
在填充Handler的入参过程中,根据你的配置,Spring将帮你做一些额外的工作:
HttpMessageConveter: 将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息
数据转换:对请求消息进行数据转换。如String转换成Integer、Double等
数据根式化:对请求消息进行数据格式化。 如将字符串转换成格式化数字或格式化日期等
数据验证: 验证数据的有效性(长度、格式等),验证结果存储到BindingResult或Error中
5.Handler执行完成后,向DispatcherServlet 返回一个ModelAndView对象;
6.根据返回的ModelAndView,选择一个适合的ViewResolver(必须是已经注册到Spring容器中的ViewResolver)返回给DispatcherServlet ;
7.ViewResolver 结合Model和View,来渲染视图
8.将渲染结果返回给客户端。
查看全文
相关阅读:
leetcode-----75. 颜色分类
《面向机器智能的TensorFlow实践》_段菲学习资料
事务及其ACID特性
greenplum基本使用操作
通过java api统计hive库下的所有表的文件个数、文件大小
深度学习原理与TensorFlow实践_喻俨资料整理
采集数据到HDFS
《深入理解TensorFlow架构设计与实现原理》_彭靖田学习材料整理
Too many open files
子元素高度100%
原文地址:https://www.cnblogs.com/zhangzack/p/9977178.html
最新文章
Java知识系统回顾整理01基础06数组03排序
Java知识系统回顾整理01基础06数组02初始化数组
Java知识系统回顾整理01基础06数组01创建数组
Java知识系统回顾整理01基础05控制流程08综合练习
Java知识系统回顾整理01基础05控制流程07结束外部循环
Java知识系统回顾整理01基础05控制流程06break
Java知识系统回顾整理01基础05控制流程05 continue
Java知识系统回顾整理01基础05控制流程04 for
【Hadoop篇06】Hadoop源码编译
【Hadoop篇05】Hadoop配置集群时间同步
热门文章
【Hadoop篇04】Hadoop配置日志聚集
【2020版冲刺年薪30W】超全大数据学习路线+思维导图
【Hadoop篇03】Hadoop配置历史服务
【Hadoop篇02】Hadoop完全分布式环境搭建
【Hadoop篇01】Hadoop本地模式环境搭建
leetcode-----80. 删除排序数组中的重复项 II
leetcode-----79. 单词搜索
leetcode-----78. 子集
leetcode-----77. 组合
leetcode-----76. 最小覆盖子串
Copyright © 2011-2022 走看看