网站建设需要照片吗,网站建设与规划心得,网站页面设计素材,东莞南城网站建设公司怎么样目录
SpringMVC
一、概念
二、springMVC的请求处理流程
三、mvc:annotation-driven 标签的作用
四、HandlerMapping、Handler和HandlerAdapter的介绍
五、SpringMVC 体系结构
六、SpringMVC的常用注解
七、view和controller之间的传值
SpringMVC 一、概念 1、 Spring…目录
SpringMVC
一、概念
二、springMVC的请求处理流程
三、mvc:annotation-driven 标签的作用
四、HandlerMapping、Handler和HandlerAdapter的介绍
五、SpringMVC 体系结构
六、SpringMVC的常用注解
七、view和controller之间的传值
SpringMVC 一、概念 1、 SpringMVC 是 spring 提供的一种基于 MVC 架构模式的轻量级 web 开发框架其本质相当于 Servlet 2、mvc介绍 model、 view 、 controller 的缩写是一种软件设计规范 是将业务逻辑、数据、显示分离的方法来组织代码 MVC主要作用降低视图与业务之间数据的双向耦合 MVC不是一种设计模式 MVC 是一种架构模式当然不同的 MVC 存在差异。 3、为什么要学习springMVC 轻量级、简单易学 约定优于配置 --------- springboot 约定优于配置 高效基于请求响应的mvc 框架。 4、Servlet 和 SpringMVC 的区别 SpringMVC其实就是 Servlet 只不过对 Servlet 进行的封装 1 Servlet 一个请求 URL 映射为一个类 2 SpringMVC 一个请求 URL 映射为一个方法。 二、springMVC的请求处理流程 1、用户发送请求到 springMVC 的前端控制器 DispatcherServlet 2、前端控制器会将我们的请求委托给我们的处理器 HanlderMapping , 根据请求的路径来映射哪一个方法来执行。RequestMapping(/) 3、会执行到我们写的处理器控制器 Handler,Controller 4、然后调用对应的 model 或者直接返回对应的结果逻辑视图名 三、mvc:annotation-driven 标签的作用 1、这个注解会帮助我们自动注册两个 bean HandlerMapping 映射请求地址映射到具体的方法上面 HandlerAdapter 适配器 2、Controller 当配置该文件之后spring 就知道我们使用注解的方式来完成 springmvc 的创建他就会扫描带有 controller 的注解。 HadlerMappering实现类的主要作用就是将请求映射到带有 RequestMapping 注解的控制器 controller 方法中将URL 路径映射到控制器的 bean 。 HandlerAdapter实现类的主要作用实现类 RequestMappingHandlerAdapter 处理请求的适配器确定调用哪个类的哪个方法构造方法参数返回值。 四、HandlerMapping、Handler和HandlerAdapter的介绍 1、Handler 对应的方法 RequestMappering Handler也就是处理器它直接对应着 MVC 中的 C 层即 Controller 层它可以表现为多种形式可以是类也可以是方法或者是其他的形式它的类型是Object 。我们用的最多的就是用 RequestMapping 注解标注的方法它就对应着一个Handler 2、HandlerMapping HandlerMapping是用来查找 Handler 的在 spingmvc 中会处理很多请求每一个请求都需要一个 Handler 进行处理具体接受到一个请求后使用哪个Handler 来处理就是 HandlerMapping 需要做的事情 3、HandlerAdapter HandlerAdapter即 Handler 的适配器也是这 3 个概念中理解起来比较模糊的一个概念。上面说 Handler 的时候我们说Handler 是有多种的表现形式只要能处理请求就可以而 dispatchServlet 处理请求的方式却是固定的 ——doService(request,response)那么怎么让固定的 doService 调用灵活的 Handler 来进行处理呢这就是HandlerAdapter需要做的事情。 适配器模式 有很多种控制器(Controller) 一种是带 Controller 注解的 还可以写一个 servlet 当做 controller, 所以用适配器做适配你看看HandlerAdapter 有几个子类每个子类都是适配某一种类型的控制器有了HandlerAdapter你只需要调用 handle 方法屏蔽了不一致的细节否则在 DispatcherServlet 里面要 if else if else了。 五、SpringMVC 体系结构 六、SpringMVC的常用注解 1、 Controller 注解 标识在类上面表示当前这个类可以用于处理我们的用户请求。 2、 RequestMapping 注解 可以标识在类上面、也可以标识在方法上面他的主要作用就是配置我们的请求路径和方法之间的关系。标识在类上面的作用主要用于模块之间的区分。 七、view和controller之间的传值 1、 view 传值给 controller RequestParam 如果参数的前面添加这个注解默认当前参数就是必填项你请求该方法上面url 的时候必须要携带当前参数如果不携带该参数就会显示400 错误因为 requestParam 的注解的默认值是 true。 总的来说有三种方式简单数据类型参数少的时候直接入参 、对象参数多的时候对象入参 、json格式 2、controller传值给view 1通过 modelAndView 来传值 2Model 来传参数 3Map集合的方式需要用到 jstl 和 el 表达式 一个类中我们需要做到的就是 RequestParam() 路径全局唯一 类上面 方法上面 get/post 请求三个加起来唯一就行。因此你会看到在一个类中存在相同的请求路径但是请求方式是不一样的。 如果jsp 页面中通过 el 表达式无法获取值的时候可以在 jsp 页面添加如下代码解决 % page isELIgnoredfalse %