当前位置: 首页 > news >正文

一个专门做ppt的网站二次开发机器人

一个专门做ppt的网站,二次开发机器人,编程网页,酷站是什么网站目录 前言DispatcherServlet初始化过程DispatcherServlet处理请求过程总结参考资料前言 SpringMVC是目前主流的Web MVC框架之一。 如果有同学对它不熟悉#xff0c;那么请参考它的入门blog#xff1a;http://www.cnblogs.com/fangjian0423/p/springMVC-introduction.html 本…目录 前言DispatcherServlet初始化过程DispatcherServlet处理请求过程总结参考资料前言 SpringMVC是目前主流的Web MVC框架之一。  如果有同学对它不熟悉那么请参考它的入门bloghttp://www.cnblogs.com/fangjian0423/p/springMVC-introduction.html 本文将分析SpringMVC的核心分发器DispatcherServlet的初始化过程以及处理请求的过程让读者了解这个入口Servlet的作用。 DispatcherServlet初始化过程 在分析DispatcherServlet之前我们先看下DispatcherServlet的继承关系。 HttpSerlvetBean继承自HttpServlet。 HttpServletBean覆写了init方法对初始化过程做了一些处理。 我们来看下init方法到底做了什么 servletservlet-namedispatcher/servlet-name servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class load-on-startup1/load-on-startup init-paramparam-namecontextConfigLocation/param-name param-valueclasspath:springConfig/dispatcher-servlet.xml/param-value /init-param /servletservlet-mappingservlet-namedispatcher/servlet-name url-pattern//url-pattern /servlet-mapping比如上面这段配置传递了contextConfigLocation参数之后构造BeanWrapper这里使用BeanWrapper有2个理由1. contextConfigLocation属性在FrameworkServlet中定义HttpServletBean中未定义       2. 利用Spring的注入特性只需要调用setPropertyValues方法就可将contextConfigLocation属性设置到对应实例中也就是以依赖注入的方式初始化属性。 然后设置DispatcherServlet中的contextConfigLocation属性(FrameworkServlet中定义)为web.xml中读取的contextConfigLocation参数该参数用于构造SpringMVC容器上下文。   下面看下FrameworkServlet这个类FrameworkServlet继承自HttpServletBean。 首先来看下该类覆写的initServletBean方法 接下来看下initWebApplicationContext方法的具体实现逻辑 这里的根上下文是web.xml中配置的ContextLoaderListener监听器中根据contextConfigLocation路径生成的上下文。 context-paramparam-namecontextConfigLocation/param-name param-valueclasspath:springConfig/applicationContext.xml/param-value /context-param listenerlistener-classorg.springframework.web.context.ContextLoaderListener/listener-class /listener比如这段配置文件中根据classpath:springConfig/applicationContext.xml下的xml文件生成的根上下文。   最后看下DispatcherServlet。 DispatcherServlet覆写了FrameworkServlet中的onRefresh方法 很明显initStrategies方法内部会初始化各个策略接口的实现类。 比如异常处理初始化initHandlerExceptionResolvers方法SpringMVC异常处理机制详解 视图处理初始化initViewResolvers方法SpringMVC视图机制详解 请求映射处理初始化initHandlerMappings方法详解SpringMVC请求的时候是如何找到正确的Controller   总结一下各个Servlet的作用 1. HttpServletBean   主要做一些初始化的工作将web.xml中配置的参数设置到Servlet中。比如servlet标签的子标签init-param标签中配置的参数。 2. FrameworkServlet   将Servlet与Spring容器上下文关联。其实也就是初始化FrameworkServlet的属性webApplicationContext这个属性代表SpringMVC上下文它有个父类上下文既web.xml中配置的ContextLoaderListener监听器初始化的容器上下文。 3. DispatcherServlet    初始化各个功能的实现类。比如异常处理、视图处理、请求映射处理等。 DispatcherServlet处理请求过程 在分析DispatcherServlet处理请求过程之前我们回顾一下Servlet对于请求的处理。 HttpServlet提供了service方法用于处理请求service使用了模板设计模式在内部对于http get方法会调用doGet方法http post方法调用doPost方法........... 进入processRequest方法看下 其中注册的监听器类型为ApplicationListener接口类型。 继续看DispatcherServlet覆写的doService方法 最终就是doDispatch方法。 doDispatch方法功能简单描述一下 首先根据请求的路径找到HandlerMethod(带有Method反射属性也就是对应Controller中的方法)然后匹配路径对应的拦截器有了HandlerMethod和拦截器构造个HandlerExecutionChain对象。HandlerExecutionChain对象的获取是通过HandlerMapping接口提供的方法中得到。有了HandlerExecutionChain之后通过HandlerAdapter对象进行处理得到ModelAndView对象HandlerMethod内部handle的时候使用各种HandlerMethodArgumentResolver实现类处理HandlerMethod的参数使用各种HandlerMethodReturnValueHandler实现类处理返回值。 最终返回值被处理成ModelAndView对象这期间发生的异常会被HandlerExceptionResolver接口实现类进行处理。 总结 本文分析了SpringMVC入口Servlet - DispatcherServlet的作用其中分析了父类HttpServletBean以及FrameworkServlet的作用。 SpringMVC的设计与Struts2完全不同Struts2采取的是一种完全和Web容器隔离和解耦的机制而SpringMVC就是基于最基本的request和response进行设计。   文中难免有错误希望读者能够指明出来。 参考资料 http://my.oschina.net/lichhao/blog/102315 http://my.oschina.net/lichhao/blog/104943 http://jinnianshilongnian.iteye.com/blog/1602617转载于:https://www.cnblogs.com/fangjian0423/p/springMVC-dispatcherServlet.html
http://www.huolong8.cn/news/301389/

相关文章:

  • 无锡模板网站制作人韩剧
  • 网站框架设计模板网站建设客户确认单
  • 哈尔滨网站建设 seo洛阳网新闻中心
  • 服务器迁移对做网站的影响网站推广目的
  • 商城网站布局网站网页设计项目计划书
  • vue做网站前台江苏手机响应式网站建设
  • 手机版微网站wordpress网站统计代码放哪个文件
  • 建购物网站要多少钱平面设计在线网站
  • 广州建站平台哪家好百度搜索指数排行
  • 网站设计和制作费用WordPress链接加前缀
  • 在越南注册公司需要什么条件seo线上培训多少钱
  • 动力启航做网站广西住房城乡建设厅官方网站
  • 上海SEO网站优化推广公司在哪里查商标注册信息
  • 电销如何介绍网站建设门户网站 用什么语言
  • 免费做网站app下载互联网招聘网站排行
  • 简答网站开发流程有域名如何做免费网站
  • 网站不收录是什么原因二级域名做很多网站
  • 智联招聘网站建设个人网站的制作模板
  • 郑州网站建设廴汉狮网络页面模板怎么设置
  • 购物类网站开发竞价托管推广多少钱
  • 淄博网站优化推广朝阳区十大互联网
  • 中卫网站推广公司制作网站的心得
  • 章贡网站建设建设机械员证书查询网站
  • 网站设计 psd百度指数有什么作用
  • 扫二维码直接进入网站怎么做网页游戏传奇世界
  • python+网站开发+prf四川网站建设
  • 营销网站都有哪些自己动手的网站
  • 网站开发的经验技巧定制包装需要多少钱
  • le网站源码哪些行业做网站的多
  • 管理网站怎么做的官网好看的公司