这里有新鲜出炉的 Java 并发编程示例,程序狗速度看过来!
Java 程序设计语言
java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台(即 JavaEE(j2ee), JavaME(j2me), JavaSE(j2se))的总称.
这篇文章主要为大家详细介绍了 Spring mvc 工作原理的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
SpringMVC 框架介绍
Spring MVC 属于 SpringFrameWork 的后续产品,已经融合在 Spring web Flow 里面.
Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架.通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术,Velocity,Tiles,iText 和 POI.Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术.
Spring MVC 分离了控制器,模型对象,分派器以及处理程序对象的角色,这种分离让它们更容易进行定制.
Spring 的 MVC 框架主要由 DispatcherServlet,处理器映射,处理器 (控制器),视图解析器,视图组成.
SpringMVC 原理图SpringMVC 接口解释
DispatcherServlet 接口:
Spring 提供的前端控制器,所有的请求都有经过它来统一分发.在 DispatcherServlet 将请求分发给 Spring Controller 之前,需要借助于 Spring 提供的 HandlerMapping 定位到具体的 Controller.
HandlerMapping 接口:
能够完成客户请求到 Controller 映射.
Controller 接口:
需要为并发用户处理上述请求,因此实现 Controller 接口时,必须保证线程安全并且可重用.
Controller 将处理用户请求,这和 Struts Action 扮演的角色是一致的.一旦 Controller 处理完用户请求,则返回 ModelAndView 对象给 DispatcherServlet 前端控制器,ModelAndView 中包含了模型(Model)和视图(View).
从宏观角度考虑,DispatcherServlet 是整个 Web 应用的控制器;从微观考虑,Controller 是单个 Http 请求处理过程中的控制器,而 ModelAndView 是 Http 请求过程中返回的模型(Model)和视图(View).
ViewResolver 接口:
Spring 提供的视图解析器(ViewResolver)在 Web 应用中查找 View 对象,从而将相应结果渲染给客户.
SpringMVC 运行原理
1. 客户端请求提交到 DispatcherServlet
2. 由 DispatcherServlet 控制器查询一个或多个 HandlerMapping,找到处理请求的 Controller
3.DispatcherServlet 将请求提交到 Controller
4.Controller 调用业务逻辑处理后,返回 ModelAndView
5.DispatcherServlet 查询一个或多个 ViewResoler 视图解析器,找到 ModelAndView 指定的视图
6. 视图负责将结果显示到客户端
DispatcherServlet 是整个 Spring MVC 的核心.它负责接收 HTTP 请求组织协调 Spring MVC 的各个组成部分.其主要工作有以下三项:
1. 截获符合特定格式的 URL 请求.
2. 初始化 DispatcherServlet 上下文对应的 WebApplicationContext,并将其与业务层,持久化层的 WebApplicationContext 建立关联.
3. 初始化 Spring MVC 的各个组成组件,并装配到 DispatcherServlet 中.
来源: http://www.phperz.com/article/18/0119/354392.html