后端自学springmvc相关知识,记录第二篇CSDN博客
首先看看springmvc到底是什么?
SpringMVC闪亮登场咯,请看!
SpringMVC 是一种轻量级的、基于 MVC 的 Web 层应用框架,它属于 Spring 框架的一部分。SpringMVC 说白了就是对 Servlet 进行了封装,方便大家使用。
看一下SpringMVC的核心架构:
还有这样:
很完整参数、属性、文件、配置等的讲解:
史上最全的SpringMVC教程,终于整理出来了_springmvc学习_二哥学Java的博客-CSDN博客
介绍一下常用组件:
一、SpingMVC的常用组件
1)DispatcherServlet
前端控制器,统一处理请求和响应,调用其他组件,处理用户的请求
2)HandlerMapping
处理器映射器,根据请求的 url、method 查找具体的Controller
3)Handler(一般来讲是Controller)
处理器,对具体的用户请求进行处理(自己要开发)
4)HandlerAdapter
处理器适配器,根据映射器找到的并去执行相关的处理器 Handler。
5)ViewResolver
视图解析器,负责将处理结果生成 View 视图。
6)View
视图接收model对象、Request对象、Response对象,并输出结果给Response对象。
具体流程:
(1)首先浏览器发送请求——>DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一访问点,进行全局的流程控制;
(2)DispatcherServlet——>HandlerMapping,处理器映射器将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器、多个HandlerInterceptor拦截器)对象;
(3)DispatcherServlet——>HandlerAdapter,处理器适配器将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器;
(4)HandlerAdapter——>调用处理器相应功能处理方法,并返回一个ModelAndView对象
(5)ModelAndView对象(Model部分是业务对象返回的模型数据,View部分为逻辑视图名)
——> ViewResolver, 视图解析器将把逻辑视图名解析为具体的View;
(6)View——>渲染,View会根据传进来的Model模型数据进行渲染,是一个Map数据结构;
(7)返回控制权给DispatcherServlet,由DispatcherServlet返回响应给用户,一个流程结束。
开发步骤
① 导入SpringMVC相关坐标
② 配置核心控制器DispathcerServlet
③ 创建Controller类和View页面
④ 使用注解配置Controller类中业务方法的映射地址
⑤ 配置核心文件 spring-mvc.xml
⑥ 客户端的请求测试
Spring MVC - Hello World 示例
步骤 | 说明 |
---|---|
1 | 创建一个名为 HelloWeb 的动态 Web 项目,并在创建的项目中的 src 文件夹下创建一个包 com.tutorialspoint。 |
2 | 将以下 Spring 和其他库拖放到文件夹 WebContent/WEB-INF/lib. 中。 |
3 | 在 com.tutorialspoint 包下创建一个 Java 类 HelloController。 |
4 | 在 WebContent/WEB-INF 文件夹下创建 Spring 配置 files web.xml 和 HelloWeb-servlet.xml。 |
5 | 在 WebContent/WEB-INF 文件夹下创建一个名为 jsp 的子文件夹。 在这个子文件夹下创建一个视图文件 hello.jsp。 |
6 | 最后一步是创建源文件和配置文件的内容并导出应用程序,如下所述。 |
下面是w3School的学习教程:
下面是超详细的很多知识:
(关于组件、注解、XML、数据的响应和请求、页面跳转、拦截器、
’ 参数和 上传 文件等 都很详细可以看看)