spring MVC之开发简单的web应用程序(一)

spring MVC之开发简单的web应用程序(一)

----------

 

添加依赖,创建配置文件

 

Spring MVC的重要组成部分是DispatcherServlet。顾名思义,它主要负责将请求分发到相应的处理程序,让他们处理这些请求。这是唯一需要在web部署描述符中配置的Servlet。它充当Spring MVC框架的前端控制器,每个Web请求都必须通过它,因此它可以管理整个请求处理流程。

当web请求被发送到Spring MVC应用程序时,DispatcherSerlvet会先接收请求,然后组织Spring的Web应用程序上下文中所配置的不同组件来处理这个请求。

 

1.添加依赖

为了用Spring MVC开发web应用程序,必须将spring-webmvc.jar复制到WEB-INF/lib目录下。如果是maven工程,我们

可以添加依赖,如:

<dependency>
	<groupId>org.springframework</groupId>
	<artifactId>spring-webmvc</artifactId>
	<version>3.0.5.RELEASE</version>
</dependency>

 

 

2.创建配置文件

对于Spring MVC应用程序而言,只需定义一个充当Spring MVC前端控制器的DispatcherServlet实例就可以了。 

<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xmlns/j2ee
		http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	
	<display-name>Court Reservation System</display-name>
	<servlet>
		<servlet-name>court</servlet-name>
		<servlet-class>
			org.springframewrok.web.servlet.DispatcherServlet
		</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>court</servlet-name>
		<url-pattern>*.htm</url-pattern>
	</servlet-mapping>
</web-app>

请注意,URL的扩展名是任意的,但是为了避免将实现技术透露给web应用程序的用户,通常选择用htm,html或者类似的名称作为扩展名。

Servlet的名称有一个重要的用途,为DispatcherServlet确定要加载的Spring MVC配置文件。默认情况下,它会查找用Servlet名称加上-servlet.xml后缀作为文件名的配置文件。你也可以在contextConfigLocation这个Servlet参数中显式指定配置文件。通过上述的设置,court Servlet默认将会加载Spring MVC配置文件court-servlet.xml。这个文件应该是一个标准的Spring Bean配置文件。

为了让Spring加载court-servlet.xml之外的配置文件,必须在web.xml中定义Servlet监听ContextLoaderListener

默认情况下,它会加载Bean配置文件/WEB-INF/applicationContext.xml,但是你可以在上下文参数contextConfigLocation中指定自己的配置文件。这里还可以指定多个配置文件,用逗号或者空格作为分隔符。 

<web-app...>
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/court-service.xml</param-value>
	</context-param>
	<listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>
	...
</web-app> 

请注意,ContextLoaderListener将指定的Bean配置文件加载到了根应用程序上下文里,而每个DispatcherServlet

实例则将其配置文件都加载到它自己的应用程序上下文中,并引用根应用程序上下文作为它的父上下文。因此,每个DispatcherSerlvet实例加载的上下文都可以访问甚至覆盖根应用程序上下文中声明的Bean(但反过来不可以的)。然而,DispatcherServlet实例加载的上下文则无法互相访问。 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值