DispatcherServlet配置的实例方法详解

  • 更新时间:2019-09-11 14:37:30
  • 编辑:景柔婉

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>

总结

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

相关教程

  • SpringBoot配置和切换Tomcat流程详解

    这篇文章主要介绍了如何给springboot配置和切换默认的Tomcat容器以及相关的经验技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    发布时间:2019-07-23

  • Python3.5怎么配置OpenCV3.2

    这次给大家带来 Python3.5怎么配置OpenCV3.2, Python3.5配置OpenCV3.2的注意事项有哪些,下面就是实战案例,一起来看一下。

    发布时间:2019-07-11

  • Effective Java中文版(第3版)

    Effective Java中文版(第3版)

    Java之父James Gosling鼎力推荐、Jolt获奖作品全新升级,针对Java 7、8、9全面更新,Java程序员必备参考书。包含大量完整的示例代码和透彻的技术分析,通过90条经验法则,探索新的设计模式和语言

    大小:197.6 MBjava电子书

  • 软件项目开发全程实录:Java项目开发全程实录(第3版)

    软件项目开发全程实录:Java项目开发全程实录(第3版)

    《软件项目开发全程实录》包含22小时视频,10套完整项目开发案例,模块库、题库、素材库登录本书网站,网站、QQ等技术支持,让学习畅通无阻。

    大小:22.4 MBJava项目开发电子书

  • Java攻略 Java常见问题的简单解法

    Java攻略 Java常见问题的简单解法

    这书以案例方式撰写,包含Java8和Java9的新特点,并得出了70多个能够 用以具体开发设计的实例,致力于让用户把握怎样运用这种新特点来处理开发设计中碰到的各种各样难题。这书致力于让用

    大小:7 MBJava电子书

  • Java Web应用详解

    Java Web应用详解

    这本书以网络留言板开发为主线将JavaWeb知识融会贯通,知识模块完整,通过静态网页篇、动态网站篇、系统框架篇、项目实战篇循序渐进地使学生全面掌握JavaWeb开发技术,欢迎下载

    大小:74.2 MBJava Web电子书

  • 疯狂Java讲义精粹(第2版)

    疯狂Java讲义精粹(第2版)

    本书以疯狂Java讲义(第2版)为蓝本,覆盖Java 8全新特性,大部分示例程序都采用Lambda表达式、流式API进行了改写,海量面试题及答案,数百个书中实例及详实课件,适合各种层次的Java学习者和

    大小:120.2 MBJava讲义电子书

  • JavaScript框架设计

    JavaScript框架设计

    JavaScript,框架设计

    大小:286.4 MBjs框架电子书

  • Java虚拟机基础教程

    Java虚拟机基础教程

    概述JVM及其特性,介绍了Java、Scala、Clojure、Kotlin和Groovy这5种基于JVM的语言,分别探讨它们的特性和用例,适合所有Java开发人员以及对JVM感兴趣的读者

    大小:78.6 MBjava电子书

  • 精通Java Web整合开发

    精通Java Web整合开发

    《精通Java Web整合开发(JSP+AJAX+Struts+Hibernate)(第2版)》 详细介绍了以JSP、AJAX、Struts 2.1、Spring 3.0、Hibernate 3.3相结合的轻量级Java EE应用开发技术。针对读者的不同学习阶段,共分基础篇、进阶篇、

    大小:231 MBJava电子书

  • Java Web开发实例大全:基础卷

    Java Web开发实例大全:基础卷

    本书筛选、汇集了Java Web开发从基础知识到高级应用各个层面约600个实例及源代码,主要内容有开发环境搭建、Java语言基础、HTML/CSS技术、JSP基础与内置对象、JavaBean技术、Servlet技术、过滤器与监听器技术、JSTL标签库

    大小:175.2 MBJava Web电子书

用户留言