首页>>后端>>Spring->springmvc是什么(java三大框架是什么)

springmvc是什么(java三大框架是什么)

时间:2023-12-01 本站 点击:0

SpringMVC

一、SpringMVC应用

1.springmvc是一个表现层的框架

经典三层架构:表现层, service层, dao层。

Spring MVC和Struts2一样,都是 为了解决表现层问题 的web框架,它们都是基于 MVC 设计模

式的。而这些表现层框架的主要职责就是处理前端HTTP请求。

Spring MVC 本质可以认为是对servlet的封装,简化了我们serlvet的开发

2.工作流程:

开发过程:

请求处理流程:

九大组件:

3.请求参数绑定,说白了SpringMVC是如何接受参数的:

原生servlet接收一个整型参数:

SpringMVC框架对Servlet的封装,简化了servlet的很多操作,SpringMVC框架对Servlet的封装,简化了servlet的很多操作

参数绑定:取出参数值绑定到handler⽅法的形参上

默认支持 Servlet API 作为方法参数:

绑定简单类型参数:

绑定Pojo类型参数:

绑定Pojo包装对象参数:

绑定日期类型参数(需要配置自定义类型转换器):

4.Restful风格

什么是Restful:

什么是rest:

Restful的优点:

Restful的特性:

Restful的示例:

SpringMVC如何支持Restful风格的请求:

5.Ajax Json交互

交互:两个方向

什么是Json:

@ResponseBody注解:

分析SpringMVC使用Json交互:

二、SpringMVC高级技术

1.拦截器(Inteceptor)使用

监听器、过滤器、拦截器的对比:

拦截器的执行流程:

多个拦截器的执行流程:

自定义SpringMVC拦截器:

2.处理multipart形式的数据

文件上传:

3.在控制器中处理异常:

4.基于Flash属性的跨重定向请求数据传递:

三、手写SpringMVC框架:

四、SpringMVC源码剖析

1.前端控制器 DispatcherServlet 继承结构:

2.重要时机点分析

SpringMVC处理请求的流程即为:

3.核心步骤getHandler方法剖析:

4.核心步骤getHandlerAdapter方法剖析:

5.核心步骤ha.handle方法剖析:

6.核心步骤processDispatchResult方法剖析:

7.SpringMVC九大组件初始化:

五、SSM整合

1.整合策略:先整合Spring + Mybatis,然后再整合SpringMVC

2.Mybatis整合Spring

3.整合SpringMVC

未完待补充完整。。。

spring mvc是什么

Spring的web框架是围绕DispatcherServlet来进行设计的。DispatcherServlet的作用是将请求分发到不同的处理器。Spring的web框架包括可配置的处理器(handler)映射、视图(view)解析、本地化(local)解析、主题(theme)解析以及对上传文件解析。处理器是对Controller接口的实现,该接口仅仅定义了ModelAndView handleRequest(request, response)方法。你可以通过实现这个接口来生成自己的控制器(也可以称之为处理器),但是从Spring提供的一系列控制器继承会更省事,比如AbstractController、AbstractCommandController和SimpleFormController。注意,你需要选择正确的基类:如果你没有表单,你就不需要一个FormController。这是和Structs的一个主要区别。Spring的视图解析相当灵活。一个控制器甚至可以直接向response输出一个视图(此时控制器返回ModelAndView的值必须是null)。在一般的情况下,一个ModelAndView实例包含一个视图名字和一个类型为Map的model,一个model是一些以bean的名字为key,以bean对象(可以是命令或form,也可以是其他的JavaBean)为value的名值对。对视图名称的解析处理也是高度可配置的,可以通过bean的名字、属性文件或者自定义的ViewResolver实现来进行解析。实际上基于Map的model(也就是MVC中的M))是高度抽象的,适用于各种表现层技术。也就是说,任何表现层都可以直接和Spring集成,无论是JSP、Velocity还是其它表现层技术。Map model可以被转换成合适的格式,比如JSP request attribute或者Velocity template model。

Spring Web MVC框架提供了大量独特的功能,包括:

1) 清晰的角色划分:控制器(controller)、验证器(validator)、命令对象(command object)、表单对象(form object)、模型对象(model object)、Servlet分发器(DispatcherServlet)、处理器映射(handler mapping)、视图解析器(view resolver)等等。 每一个角色都可以由一个专门的对象来实现。

2)强大而直接的配置方式:将框架类和应用类都作为JavaBean配置,支持在一个context中引用其他context的中JavaBean,例如,在web控制器中对业务对象和验证器(validator)的引用。

3) 可适配、非侵入的controller:你可以根据不同的应用场景,选择合适的控制器子类(simple型、command型、form型、wizard型、multi-action型或者自定义),而不是从单一控制器(比如Action/ActionForm)继承。

4)可重用的业务代码:你可以使用现有的业务对象作为命令或表单对象,而不需要在类似ActionForm的子类中重复它们的定义。

5)可定制的绑定(binding) 和验证(validation):比如将类型不匹配作为应用级的验证错误,这可以保存错误的值。再比如本地化的日期和数字绑定等等。在其他某些框架中,你只能使用字符串表单对象,需要手动解析它并转换到业务对象。

6) 可定制的handler mapping和view resolution:Spring提供从最简单的的URL映射,到复杂的、专用的定制策略。与某些MVC框架强制开发人员使用单一特定技术相比,Spring显得更加灵活。灵活。

7) 灵活的model转换: 在Springweb框架中,使用基于Map的名/值对来达到轻易地与各种视图技术的集成。

8) 可定制的本地化和主题(theme)解析:支持在JSP中可选择地使用Spring标签库、支持JSTL、支持Velocity(不需要额外的中间层)等等。

9)Spring Bean的生命周期可以被限制在当前的HTTP Request或者HTTP Session。准确的说,这并非Spring MVC框架本身特性,而应归属于Sping MVC使用的WebApplicationContext容器。

“spring mvc”是什么意思?

spring是框架,mvc是一种设计模式。,M代表model;V代表View;C代表controller从字面意思你也可以看出来M是指模型一般指DAO和service ;view代表显示一般指页面eg:jsp,html ftl等c值得是控制器,比如struts和springMVC 中的action与controller 而springMVC严格意义上指的是前端控制器,就是每次客户端与服务器交互都要经过springMVC的controller。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Spring/5995.html