SpringMVC的知识点

  1. 什么是SpringMVC?

    • SpringMVC是一个基于Java实现了MVC设计模式的轻量级Web框架。通过把model-view-controller进行分离,将Web层进行职责解耦,把Web应用分成逻辑清晰的几部分,方便开发人员之间的配合
  2. SpringMVC的执行流程?
    • 用户发送请求给DispatcherServlet,DispatcherServlet调用HandlerMapping
    • HandlerMapping通过请求中的URL找到对应的Handler,并返回Handler给DispatcherServlet
    • DispatcherServlet调用HandlerAdapter请求执行Handler,执行结束返回ModelAndView
    • DispatcherServlet调用ViewResolver进行解析ModelAndView,返回真正的视图对象
    • DispatcherServlet对视图对象进行渲染,渲染结束就将此视图返回给用户
  3. SpringMVC的优点是什么?
    • 支持多种视图类型,不仅仅局限于JSP
    • 与Spring很好的集成
    • 有明确的角色分配:
      • 前端控制器(DispatcherServlet)
      • 处理器映射器(HandlerMapping)
      • 处理器适配器(HandlerAdapter)
      • 视图解析器(ViewResolver)
    • 支持任何资源的映射策略
  4. SpringMVC和Struts2的区别?
    • 拦截级别:

      • SpringMVC是方法级别的拦截
      • Struts2是类级别的拦截
    • 数据的独立性:
      • SpringMVC的方法之间是独立的,独享request和response数据,请求数据通过参数获取,处理数据通过ModelMap交回框架
      • Struts2方法也是独立的,但所有的action都是共享的,虽然不会对程序执行造成影响,但是对开发者开发和读程序时带来麻烦
    • 拦截方式:
      • SpringMVC用独立的AOP方式
      • Struts2有自己的interceptor机制,这就导致要比SpringMVC的配置文件要多
    • 对Ajax的支持:
      • SpringMVC集成了Ajax,使用Ajax更加方便,我们可以使用@ResponseBody注解进行实现
      • Struts2一般需要安装插件或者自己手写代码进行实现
  5. Spring的重要组件?
    • 前端控制器(DispatcherServlet):主要接受请求,响应结果,相当于一个转发器。它可以降低其他组件的耦合度
    • 处理器映射器(HandlerMapping):通过请求的URL查询到Handler
    • 处理器适配器(HandlerAdapter):编写Handler时要按照HandlerAdapter的规则进行编写,这样才能保证HandlerAdapter正常执行Handler
    • 处理器(Handler 需要开发者开发)
    • 视图解析器(ViewResolver):解析视图,根据视图逻辑名解析成真正的视图对象
    • 视图(View):是一个接口,实现类拥有多种不同的视图类型(如:JSP、FreeMarker、PDF等)
  6. SpringMVC常用的注解有哪些?
    • @RequestMapping:用于处理请求http映射的注解,可以在类和方法上使用。当时用在类上时,此类中所有响应的方法都以此地址作为父路径
    • @RequestBody:注解实现接收http请求的json数据,将json对象转为Java对象
    • @ResponseBody:注解实现controller响应数据的Java对象转为json对象并响应给客户
  7. 说一说注解的原理是什么?
    • 注解就是一个继承了Annotation的特殊接口,其实现类就是在运行时动态的生成代理对象。在我们通过反射获取注解时,会返回Java运行时生成的动态代理对象。通过代理对象调用自定义注解的方法,会最终调用AnnotationInvocationHandler的invoke()方法。该方法会从memberValues这个map中索引出对应的值,memberValues中的数据来自Java的常量池

原文地址:https://www.cnblogs.com/Fmir/p/11526610.html

时间: 2024-10-18 20:51:47

SpringMVC的知识点的相关文章

SpringMVC简单知识点

看了一下<SpringMVC学习指南>,想着总结一下自己学到的东西. 众所周知,MVC模式就是模型.视图.控制器模式,而我认为SpringMVC相较于普通MVC模式的好处在于,它可以实现依赖注入.依赖注入是这样处理此类情景的:接管对象的创建工作,并将该对象的引用注入需要对象的组件.为了能让框架进行依赖注入,程序员需要编写特定的set方法或者构建方法.注意:Spring管理的对象称为beans. 在MVC模式中,每个HTTP请求都发送给控制器,请求中的URI标识出对应的action.action

170821-关于SpringMVC的知识点

1.SpringMVC 概述 Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一  Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架  Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请 求的控制器,而无须实现任何接口.  支持 REST 风格的 URL 请求  采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性 2.SpringMVC之HelloWorld 步骤: – 加入 j

springMVC常用知识点的整理

forward和redirect的区别是什么 Spring MVC中redirect重定向3种方式 ========================================== 原文地址:https://www.cnblogs.com/MarlonKang/p/11739117.html

Bootstrap关联select菜单,包罗万象的知识点

今天我将介绍自定义的bootstrap关联select菜单,主要应用场合有省市级关联菜单等等,那么就先拿这个例子来讲,当然其他场景的关联菜单也同样适用.说实话,封装好一个通用的组件还是需要花费很多精力的和时间的,所谓通用,自然要考虑周全,叹!这次整理的Bootstrap关联select,里面也涉及到了很多jquery.ajax.springMVC等等知识点,可谓包罗万象! 首先,请允许我代表该自定义组件做一番小小的介绍. "hi,你好,我叫yunm.combox.js,主人给我起的名字,其实呢,

SpringMVC框架之第四篇

5.SpringMVC异常处理 5.1.异常分类 1.可预知异常: Java编译时可检测异常,例如:IOException.SQLException等. 自定义异常(继承Exception父类的自定义类即为自定义异常). 2.不可预知异常: Java运行时异常,例如:NullPointerException.IndexOutOfBoundsException等. 5.2.SpringMVC异常处理 在JavaEE项目的开发中,不管是持久层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过

0105 springMVC开发基础

背景 已经明确了MVC的思想和SpringMVC的基本流程,下面就都具体的mvc开发细节知识了. @RequestMapping springMVC核心流程中,启动阶段会把注解@RequeestMapping注解所配置的内容保存到HandlerMapping中,然后等待请求到达. 看一下源码: 简单分一下类: 方法 说明 name,value,path 标识控制器方法的访问url,可以配置多个 method 处理的方法,http的标准方法,比如get,post等 params 参数 header

springMVC知识点

1 全注解 <mvc:annotation-driven> 1:自动注册基于注解风格的处理器需要的DefaultAnnotationHandlerMapping. AnnotationMethodHandlerAdapter 2:支持ConversionService自动注册(类型转换) 3:支持验证框架的自动探测并注册 4:支持@RequestBody 和 @ResponseBody,支持JSON数据转换(只 需将Jackson实现放置到classpath) <context:comp

SpringMVC知识点汇总

1.${SESSION_USER_V2} 会从大到小查找作用域中的attribute          PageContext                          PageScope          servletRequest                       RequestScope          httpSession                         SessionScope          Application/servletContex

springMVC学习笔记--知识点总结1

以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- 配置渲染器 --> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property