SpringMVC刘宝宝深度版

原创 2017年01月03日 10:51:06

一概念:

        springMVC是spring框架的一个模块,springMvc比 struts2更加高效,
        spring mvc采用松散耦合可拔插结构比其他mvc框架更具扩展性

二优点:

      1、Spring MVC的学习难度小于Struts2,Struts2用不上的多余功能太多。这不是决定因素。

      2、Spring MVC很容易就可以写出性能优秀的程序,Struts2要处处小心才可以写出性能优秀的程序(指MVC部分)

      3、Spring MVC的灵活是你无法想像的,Spring的扩展性有口皆碑,Spring3 MVC当然也不会落后,不会因使用了MVC框架而感到有任何的限制。

三工作原理:

     1.核心类与接口

DispatcherServlet   -- 前置控制器    

HandlerMapping接口 -- 处理请求的映射

HandlerMapping接口的实现类:

SimpleUrlHandlerMapping  通过配置文件,把一个URL映射到Controller

DefaultAnnotationHandlerMapping  通过注解,把一个URL映射到Controller类上

HandlerAdapter接口 -- 处理请求的映射

AnnotationMethodHandlerAdapter类,通过注解,把一个URL映射到Controller类的方法上

Controller接口 -- 控制器

由于我们使用了@Controller注解,添加了@Controller注解注解的类就可以担任控制器(Action)的职责,所以我们并没有用到这个接口

HandlerInterceptor 接口--拦截器,我们自己实现这个接口,来完成拦截的器的工作。

ViewResolver接口的实现类

UrlBasedViewResolver类 通过配置文件,把一个视图名交给到一个View来处理

InternalResourceViewResolver类,比上面的类,加入了JSTL的支持

View接口

JstlView类

LocalResolver接口

HandlerExceptionResolver接口 --异常处理

SimpleMappingExceptionResolver实现类

ModelAndView类

     2.SpringMVC的流程图:

    

    2.文字通过流程图进行流程描述(十全十美法则):

      1. 用户发送请求给Tomcat,tomcat调用前端控制器DispatcherServlet,

      2.通过handleMapping接口,去处理请求映射,

      3.handleMapping接口,找相对应的Controller,有两种情况【4和5】

      4.没有,就不执行,

      5.有,就执行,

      6.执行完毕后,有两种情况【7和8】

      7.返回ModelAndView对象,里面包含视图对象信息,

      8.返回字符串,通过ViewResolver接口的实现类,将字符串转化成视图对象,

      9.把视图数据,发送给前端控制器Dispatcher,

      10.最后响应给客户。

后续更新中。。。。。。。。








版权声明:本文为博主原创文章,未经博主允许不得转载。

Hibernate框架刘宝宝深度版

刘宝宝开始总结了: 第一章 Hibenate的基础篇        1.hibernate的概念:                       hibernate是一种采用ORM(对象映射关系)...
  • sinat_33949861
  • sinat_33949861
  • 2017年01月06日 14:11
  • 473

SpringMVC框架刘宝宝深度版——Springmvc搭建步骤

搭建步骤两种方法三种样式 第一种样式:         1.创建web项目         2.在lib文件下导入7个jar                   3.在web.xml中...
  • sinat_33949861
  • sinat_33949861
  • 2017年01月04日 16:02
  • 165

JPA 深度刘宝宝剖析版

刘宝宝讲解开始了。。。。。 第一讲 JPA介绍 JPA 1.JPA的概念:     Java Persistence API:用于对象持久化的 API     Java EE 5.0 平台标准的 ...
  • sinat_33949861
  • sinat_33949861
  • 2016年12月29日 18:23
  • 299

vector刘汝佳算法入门学习笔记

//*****-*-----vector***/////// 常用操作封装,a.size();可以读取大小               a.resize();可以改变大小;       ...
  • KEYboarderQQ
  • KEYboarderQQ
  • 2016年04月27日 13:32
  • 540

深度解析SpringMvc实现原理手写SpringMvc框架

http://www.toutiao.com/a6340568603607171329/?tt_from=mobile_qq&utm_campaign=client_share&app=explore...
  • u013322876
  • u013322876
  • 2016年10月17日 11:05
  • 664

微信公众平台深度开发Java版 v2.0(第一季)完整版

http://edu.csdn.net/course/detail/1411
  • limuzi13
  • limuzi13
  • 2016年05月05日 20:18
  • 535

《Zabbix监控系统深度实践》

Zabbix的出现,就我而言很有意思。当时内部的Nagios+Cacti运行正常,但是部分功能没时间配置、开发(毕竟所有系统的监控功能不能全都由我完成,难道系统管理员只会处理故障么?),后面就在寻找自...
  • GoldenDragon
  • GoldenDragon
  • 2015年01月13日 19:17
  • 1661

【mybatis深度历险系列】mybatis的框架原理+入门程序解析

在前面的博文中,小编介绍了springmvc的相关知识点,在今天这篇博文中,小编将介绍一下mybatis的框架原理,以及mybatis的入门程序,实现用户的增删改查,她有什么优缺点以及mybatis和...
  • u010850027
  • u010850027
  • 2016年08月03日 00:00
  • 2793

《青春》吉他谱

    刘传版《青春》吉他谱,经典的校园民谣。这是我学会的第一首吉他曲。 ...
  • playingguitar
  • playingguitar
  • 2006年07月18日 19:45
  • 4021

商业模式是决定项目成败的关键

商业模式是决定项目成败的关键
  • shangtaosoft
  • shangtaosoft
  • 2017年12月05日 17:55
  • 53
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SpringMVC刘宝宝深度版
举报原因:
原因补充:

(最多只允许输入30个字)