标签分类
技术文章
当前位置:主页 > 计算机编程 > java > 配置DispatcherServlet的方法介绍

DispatcherServlet配置的实例方法详解

  • 发布时间:
  • 作者:码农之家原创
  • 点击:190

配置DispatcherServlet的方法介绍

这篇文章主要知识点是关于DispatcherServlet,配置,实例方法,配置DispatcherServlet的方法介绍,的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

解密搜索引擎技术实战 Lucene Java精华版
  • 类型:搜索引擎大小:135.6 MB格式:PDF出版:电子工业出版社作者:罗刚
立即下载

更多相关的学习资源可以参阅 程序设计电子书Java电子书、等栏目。

DispatcherServlet是Spring MVC的前端控制器,要想在程序中使用DispatcherServlet,我们需要在web.xml中配置一个DispatcherServlet。配置的方法是,在web.xml文件中,配置一个<servlet>节点,它的子节点<servlet-name>可以自定义一个名字,例如sample,<servlet-class>指定为org.spring.springframework.web.servlet.DispatcherServlet。

当DispatcherServlet被载入后,它将从xml文件载入Spring的应用上下文,而从哪个xml文件载入呢?xml文件的名字取决于DispatcherServlet的名字。如果DispatcherServlet的名字为sample,那么它将从sample-servlet.xml的文件中载入应用上下文。

接下来,我们需要配置哪些URL需要由DispatcherServlet来处理,这是通过在web.xml中配置一个<servlet-mapping>节点来实现的。如下所示。

<servlet-mapping>
  <servlet-name>sample</servlet-name>
  <url-pattern>*.htm</url-pattern>
</servlet-mapping>

正如前面提到的DispatcherServlet将从<servlet-name>命名的xml中载入应用的上下文。那么这就要求我们把所有需要载入的Bean都定义在这个xml文件中。这显然是不利于对Bean的分类的管理的。例如,我们想把持久层的bean放在一个xml文件中,把服务层的bean放在另一个xml文件中,把web层的bean也单独放在一个xml文件中。那么DispatcherServlet如何载入多个xml文件呢?

为了把这些xml都载入进来,我们需要在web.xml文件中配置一个上下文载入器,上下文载入器用于载入除DispatcherServlet载入的xml文件之外的文件。最常用的上下文载入器就是一个servlet监听器,名称为ContextLoadListener。我们需要在web.xml中这样配置它。

<listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

默认情况下,上下文载入器将会在/WEB-INF/applicationContext.xml中载入配置,但如果想载入多个配置文件,我们需要改变它的默认行为。

可以通过在Servlet上下文中设置contextConfigLocation参数来为上下文载入器指定一个或多个Spring配置文件。如下。

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
    /WEB-INF/a.xml
    /WEB-INF/b.xml
    /WEB-INF/c.xml
  </param-value>
</context-param>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对码农之家的支持。如果你想了解更多相关内容请查看下面相关链接

以上就是本次给大家分享的全部知识点内容总结,大家还可以在下方相关文章里找到vue项目中使用md5加密以及、 儿童python编程入门书籍推、 解决axios.interceptors.respon、 等java文章进一步学习,感谢大家的阅读和支持。

上一篇:spring security安全防护知识点详解

下一篇:Java输入输出流代码实例用法

展开 +

收起 -

学习笔记
网友NO.993408

浅谈springmvc的DispatcherServlet分析

±¾ÎĽéÉÜÁËspringmvcµÄDispatcherServlet£¬·ÖÏí¸ø´ó¼Ò£¬¾ßÌåÈçÏ£º Ò»¡¢³ÌÐò £¨Ò»£©web.xmlÎļþÖеÄÄÚÈÝ !-- springMVCºËÐÄÅäÖà -- servlet servlet-namespringmvcServlet/servlet-name servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class init-param param-namecontextConfigLocation/param-name !--spingMVCµÄÅäÖ÷¾¶ -- param-valueclasspath:springmvc/spring-mvc.xml/param-value /init-param load-on-startup1/load-on-startup /servlet servlet-mapping servlet-namespringmvcServlet/servlet-name url-pattern*.html/url-pattern /servlet-mapping £¨¶þ£©src/main/resource/springmvc/spring-mvc.xmlÖеÄÄÚÈÝ !-- ɨÃècontroller£¨controller²ã×¢È룩 -- context:component-scan base-package="com.z.controller"/ !-- ¶ÔÄ£ÐÍÊÓͼÌí¼ÓÇ°ºó׺ -- bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/view/" p:suffix=".jsp"/ £¨Èý£©src/main/java/com/z/controller/IndexController.javaÖеÄÄÚÈÝ package com.z.controller;import javax.servlet.http.HttpServletRequest;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;@Controllerpublic class IndexController { @RequestMapping("/index.html") public ModelAndView getIndex(HttpServletRequest request) throws Exception { ModelAndView mav = new ModelAndView("inde……

网友NO.608145

Spring MVC学习之DispatcherServlet请求处理详析

前言 要深入理解spring mvc的工作流程,就需要先了解spring mvc的架构: 从上图可以看到 前端控制器DispatcherServlet在其中起着主导作用,理解了DispatcherServlet 就完全可以说弄清楚了spring mvc。 DispatcherServlet作为Spring用于处理web请求注册的唯一一个Servlet,所有的请求都是经由DispatcherServlet进行分发处理的。本文主要讲解DispatcherServlet是如何对请求进行分发,处理,并且生成相应的视图的。 1. 整体结构 在HttpServlet中,其对不同方式的请求进行了分发,比如对于GET请求,其提供了doGet()方法,对于POST请求,其提供了doPost()方法等等。通过这种方式,子类可以针对于当前请求的方式实现不同的方法即可。但是在DispatcherServlet中,由于需要使用同一的方式对不同的请求进行处理,因而其对各个请求方式进行了整合,如下就是DispatcherServlet针对GET和POST请求所编写的同一处理逻辑: @Overrideprotected final void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response);}@Overrideprotected final void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response);} 可以看到,无论是GET请求还是POST请求,DispatcherServlet都是委托给了processRequest()方法处理,对于其他的请求方式,……

网友NO.617840

spring mvc DispatcherServlet之前端控制器架构详解

前端控制器是整个MVC框架中最为核心的一块,它主要用来拦截符合要求的外部请求,并把请求分发到不同的控制器去处理,根据控制器处理后的结果,生成相应的响应发送到客户端。前端控制器既可以使用Filter实现(Struts2采用这种方式),也可以使用Servlet来实现(spring MVC框架)。 DispatcherServlet 作为前置控制器是web服务器的入口,是spring mvc最重要的一个类,通过它的生命周期可以加深对web服务器的理解。 servlet的生命周期 首先我们回忆一下servlet的生命周期: Servlet生命周期分为三个阶段:【Servlet生命周期与工作原理详解】 1.初始化阶段 调用init()方法。Servlet被装载后,Servlet容器创建一个Servlet实例并且调用Servlet的init()方法进行初始化。在Servlet的整个生命周期内,init()方法只被调用一次。 2.响应客户请求阶段 调用service()方法 3.终止阶段 调用destroy()方法 Servlet初始化阶段 在下列时刻Servlet容器装载Servlet: 1.Servlet容器启动时自动装载某些Servlet,实现它只需要在web.XML文件中的Servlet/Servlet之间添加如下代码: loadon-startup1/loadon-startup 2.在Servlet容器启动后,客户首次向Servlet发送请求 3.Servlet类文件被更新后,重新装载Servlet DispatcherServlet的结构 复习了上述知识后我们来看看DispatcherServlet的结构: DispatcherServlet继承自抽象类:FrameworkS……

<
1
>

Copyright 2018-2019 xz577.com 码农之家

版权责任说明