spring mvc

spring mvc

1、什么是Spring的MVC框架?

Spring配备构建Web应用的全功能MVC框架。Spring可以很便捷地和其他MVC框架集成,Spring的MVC框架用控制反转把业务对象和控制逻辑清晰地隔离。它也允许以声明的方式把请求参数和业务对象绑定。

Spring mvc是一个基于mvc的web框架。Spring mvc是Spring框架的一个模块,Spring mvc和Spring无需通过中间整合层进行整合。

mvc 解释
m 模型
v 视图
c 控制

2、 如何启用注解

在spring的xml配置中添加<mvc:annotation-drivern>即可

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"  
 xmlns:context="http://www.springframework.org/schema/context"  
 xmlns:p="http://www.springframework.org/schema/p"  
 xmlns:mvc="http://www.springframework.org/schema/mvc"  
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
 xsi:schemaLocation="http://www.springframework.org/schema/beans  
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
      http://www.springframework.org/schema/context  
      http://www.springframework.org/schema/context/spring-context.xsd  
      http://www.springframework.org/schema/mvc  
      http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
      <!-- 注解扫描 -->
      <context:component-scan base-package="club.sscai.annotation"/>
      <!--使用mvc注解声明  -->
      <mvc:annotation-driven/>

      <!-- 不使用mvc注解声明则要注入以下两个bean
      <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>
      <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
       -->
      <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>
</beans>

3、 Spring MVC的请求流程:

  • 第一步:发起请求到前端控制器(DispatcherServlet)
  • 第二步:前端控制器请求HandlerMapping查找Handler可以根据xml配置、注解进行查找
  • 第三步:处理器映射器HandlerMapping向前端控制器返回Handler
  • 第四步:前端控制器调用处理器适配器去执行Handler
  • 第五步:处理器适配器去执行Handler
  • 第六步:Handler执行完成给适配器返回ModelAndView
  • 第七步:处理器适配器向前端控制器返回ModelAndView。ModelAndView是springmvc框架的一个底层对象,包括 Model和view
  • 第八步:前端控制器请求视图解析器去进行视图解析,根据逻辑视图名解析成真正的视图(jsp)
  • 第九步:视图解析器向前端控制器返回View
  • 第十步:前端控制器进行视图渲染。视图渲染将模型数据(在ModelAndView对象中)填充到request域
  • 第十一步:前端控制器向用户响应结果

4、总结

spring mvc 是spring servlet的进化版,基于spring有效的进行层级控制,增加流程控制,其思想目前还在使用

上一篇:ax = plt.gca( ) 中 ax 可以使用的方法(仅包含方法名)


下一篇:[php代码审计] 通读审计之shangfancms