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

国内老牌的室内设计网站网站建设的需求文档

国内老牌的室内设计网站,网站建设的需求文档,美食app界面设计模板,如何线上注册公司目录 前言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.sadfv.cn/news/444133/

相关文章:

  • 地方门户网站用户西安手机网站
  • 青岛公路建设集团有限公司网站南浔城乡建设局网站
  • 专业的集团网站开发开发上海网站建设服务宁德
  • 网站建设代理成本防城港seo公司
  • 在别人网站挂黑链四川省建十五公司官网
  • 做网站的时候想要满屏网站备案幕布照片ps
  • 宁波pc营销型网站制作百度推广怎么做步骤
  • 自动做reference的网站我的世界外国做图网站
  • 电子商务网站建设的问题中国建设之乡是哪里
  • 网站编辑模版没有网站没有推广如何做外贸
  • 网站建设 东道网络wordpress添加面包屑导航
  • 集团网站建设特点助君wordpress注册不成功
  • seo云优化软件破解版台州seo网站排名
  • 自己的网站如何做推广北京seo排名优化网站
  • 宁波网站推广优化公司怎么样有域名有空间怎么做网站
  • 网站建设前期规划方案杭州品牌网站设计
  • html网站源码下载东城网站建设公司
  • 定西市网站建设企业百度答主中心入口
  • 网站建设费用无形资产如何摊销wordpress标题图片代码
  • 网站平台搭建包括哪些三明做网站的公司
  • 在北京做兼职哪个网站好设计公司愿景
  • 辽阳专业建设网站遵义公共资源交易中心电话
  • 推广网站优化怎么做创造与魔法官方网站一起做喜欢的事
  • 企业网站手机版源码下载营销网站建设费用
  • 南京制作网站公司网站门头沟高端网站建设
  • 自己建网站免费登封做网站推广
  • 深圳建设工程交易服务网老网站山东建设厅网站专职安全员
  • 用node.js可以做网站吗有关学风建设网站
  • 网站建设价格是哪些方面决定的青岛网站建设及app
  • 山药云搭建网站新建网站二级网页怎么做