SSM框架-DispatcherServlet

一.概述

DispatcherServlet是SpringMVC的核心控制器,就像是SpringMVC的心脏,几乎所有的请求都会经过这个控制器,通过它,大大的降低了模块之间的耦合度。

二.工作流程:


- Web中,无非是请求和响应; 在SpringMVC中,请求的第一站是DispatcherServlet,充当前端控制器角色;

- DispatcherServlet会查询一个或多个处理器映射(handler mapping)并根据请求所携带的URL信息进行决策,将请求发送给哪个SpringMVC控制器(controller);

- 控制器做两件事:一是将数据打包,二是定义逻辑视图名,然后返回给DispatcherServlet;

- DispatcherServlet通过视图解析器(view  resolver)来将逻辑视图名匹配为一个特定的视图实现,它可能是也可能不是JSP;

- 交付数据模型,以视图形式响应给客户,整个请求流程完成。

三.web.xml

/webapp/WEB-INF/web.xml

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
	                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
	 version="3.1" metadata-complete="true">
	 <display-name>Archetype Created Web Application</display-name>
	 <!-- 引入SpringMVC 的配置 --> 
	 <!-- The front controller of this Spring Web application, responsible for 
	  handling all application requests -->
	  <servlet>
		  <servlet-name>spring-dispatcher</servlet-name>
		  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		  <init-param>
			   <param-name>contextConfigLocation</param-name>
			   <param-value>classpath:spring/spring-*.xml</param-value>
		  </init-param>
	 </servlet>  
	 <!-- Map all requests to the DispatcherServlet for handling -->
	 <servlet-mapping>
		  <servlet-name>spring-dispatcher</servlet-name>
		  <!-- 默认匹配所有的请求 -->
		  <url-pattern>/</url-pattern>
	 </servlet-mapping>
</web-app>

四.spring-service.xml

/resources/spring/spring-service.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:aop="http://www.springframework.org/schema/aop" 
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.3.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">

        <!-- 扫描service包下所有使用注解的类型 -->
	 <context:component-scan
	  base-package="com.imooc.o2o.service" />
	  
	 <!-- 配置事务管理器 -->
	 <bean id="transactionManager"
	  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
	  <!-- 注入数据库连接池 -->
	  <property name="dataSource" ref="dataSource" />
	 </bean>
	 
	 <!-- 配置基于注解的声明式事务 -->
	 <tx:annotation-driven transaction-manager="transactionManager" />
</beans> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值