沧州网站建设定制价格,网站开发的经济可行性分析,wordpress dux 1.5,宁波优化推广选哪家1. Spring Web MVC Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架#xff0c;从⼀开始就包含在 Spring 框架中。它的正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc)#xff0c;但它通常被称为“spring MVC”#xff1b; 什么是Servlet呢? Servlet…1. Spring Web MVC Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架从⼀开始就包含在 Spring 框架中。它的正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc)但它通常被称为“spring MVC” 什么是Servlet呢? Servlet 是一种实现动态页面的技术.准确来讲Servlet是一套 Java Web 开发的规范或者说是一套Java Web 开发的技术标准,只有规范并不能做任何事情必须要有人去实现它。 所谓实现 Servlet 规范就是真正编写代码去实现 Servlet 规范提到的各种功能包括类、方法、属性等。Servlet 规范是开放的除了 Sun 公司其它公司也可以实现 Servlet 规范目前常见的实现了Servlet 规范的产品包括Tomcat、Weblogic、Jetty、Jboss、WebSphere 等它们都被称为Servlet 容器。Servlet 容器用来管理程序员编写的 Servlet 类。 综上所述Spring Web MVC 是⼀个 Web 框架. 下⾯咱们简称之为: Spring MVC为了我们能够深入的了解spring mvc我们下面首先来了解一下mvc
1.1 MVC 定义 MVC 是 Model View Controller 的缩写它是软件⼯程中的⼀种软件架构设计模式它把软件系统分 为模型、视图和控制器三个基本部分其mvc结构如下所示 View视图指在应用程序中专门用来与浏览器进行交互展示数据的资源。 Controller控制器可以理解为一个分发器用来决定对于视图发来的请求需要用到哪一个模型来处理以及处理完后需要跳回到哪一个试图。即用来连接视图和模型。 Model模型是应用程序的主体部分用来处理程序中数据逻辑的部分。 1.2 理解Spring MVC MVC 是⼀种架构设计模式, 也⼀种思想, ⽽ Spring MVC 是对 MVC 思想的具体实现. 除此之外, Spring MVC还是⼀个Web框架. 总结来说Spring MVC 是⼀个实现了 MVC 模式的 Web 框架. 所以, Spring MVC主要关注有两个点: 1、mvc思想 2、web框架
其实, Spring MVC 我们在前⾯已经⽤过了, 在创建 Spring Boot 项⽬时我们勾选的 Spring Web 框架其实就是 Spring MVC 框架如下图所示 如上图所示Build web, including RESTful, applications using Spring MVC. Uses Apache Tomcat as the defaultembedded container. 说明创建spring boot项目应用了Spring MVC框架。 我们也可以这样理解Spring Boot 只是实现Spring MVC的其中⼀种⽅式⽽已. Spring Boot 可以添加很多依赖, 借助这些依赖实现不同的功能. Spring Boot 通过添加Spring Web MVC框架, 来实现web功能. 不过Spring在实现MVC时, 也结合⾃⾝项⽬的特点, 做了⼀些改变, 相对⽽⾔, 下⾯这个图更能提体现spring 实现mvc思想的结构图 2. 学习spring mvc 既然是 Web 框架, 那么当用户在浏览器中输⼊了 url 之后我们的 Spring MVC 项⽬就可以感知到用户的请求, 并给予响应. 故此学习Spring MVC, 重点也就是学习如何通过浏览器和⽤⼾程序进⾏交互主要是下面三个方面 1、建立连接将用户浏览器和Java程序连接起来也就是浏览器访问一个地址能够调用到我们的Spring程序。 2、请求用户请求的时候会带一些参数在spring程序中要想办法获取到参数所以请求主要是 要带有获取参数的功能。 3、响应执行了业务逻辑之后要把spring程序执行的结果返回给用户也就是响应。 对于 Spring MVC 来说掌握了以上 3 个功能就相当于掌握了 Spring MVC. 2.1 项⽬准备 Spring MVC 项⽬创建和 Spring Boot 创建项⽬相同在创建的时候选择 Spring Web 就相当于创建了 Spring MVC 的项⽬. Spring MVC 使⽤ Spring Boot 的⽅式创建 创建项⽬时, 勾选上 Spring Web 模块即可如下图所⽰ 2.2 建⽴连接 在Spring MVC中使用注解RequestMapping就是用来实现URL路由映射的也就是浏览器连接程序的作用。 创建UserController 类编写如下代码
package com.example.zxslzw2014_8_11;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
public class UserController {RequestMapping(/hello)public String hello(){return hello,仲夏是荔枝味;}
}注意⽅法名和路径名称⽆需⼀致
2.2.1 RequestMapping 使用 RequestMapping 是Spring Web MVC 应用程序中最常被用到的注解之一它是用来注册接口的路由映射的。 上面代码中注解里包含 /hello表示服务器收到浏览器请求时路径为 /hello 的请求就会调用 hello这个方法的代码。 路由映射当用户访问一个URL时将用户的请求对应到程序中某个类的某个方法就叫做路由映射。 RequestController的作用 既然使用RequestMapping就可以使浏览器知道要把请求教给哪个方法了那为什么还要加上RequestController呢我们现在把RequestController去掉再访问一次看看 可以看到, 程序报了404, 找不到该⻚⾯. 这就是 RestController 起到的作⽤. ⼀个项⽬中, 会有很多类, 每个类可能有很多的⽅法, Spring程序怎么知道要执⾏哪个⽅法呢? Spring会对所有的类进⾏扫描, 如果类加了注解RestController, Spring才会去看这个类⾥⾯的⽅法 有没有加 RequestMapping 这个注解,spring就不会对这个类进行扫描更不用说对着这个类的方法进行访问了 2.2.2 RequestMapping 使⽤ RequestMapping 既可以修饰类也可以修饰方法当同时修饰类和方法时访问的地址就是类路径 方法路径。 RequestMapping标识一个类设置映射请求的请求路径的初始信息。 RequestMapping标识一个方法设置映射请求的请求路径的具体信息。 修改代码如下给类加上注解
package com.example.zxslzw2014_8_11;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
RequestMapping(/user)
public class UserController {RequestMapping(/hello)public String hello(){return hello,仲夏是荔枝味;}
}RequestMapping的URL路径前面不加 / 斜杠也是可以的Spring程序启动时会进行判断如果前面没有加 / Spring会自己拼接上一个 / 。现在代码如下
package com.example.zxslzw2014_8_11;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
RequestMapping(user)
public class UserController {RequestMapping(hello)public String hello(){return hello,仲夏是荔枝味;}
}综上所述结果是没有发生变化的 但在开发时还是建议把 / 加上大部分企业的规范也是加上的RequestMapping的URL路径也可以是多层路径但最终访问时依然是类路径 方法路径。
2.2.3 RequestMapping是GET还是POST请求 GET请求 浏览器发送的请求类型都是get方法的通过上面代码案例可以看出来RequestMapping支持get请求。下面用fiddler抓包如下 POST请求 我们通过form表单来构造请求先创建test.html前端代码如下所示
!DOCTYPE html
html langenheadmeta charsetUTF-8titleTitle/title/headbodyform action/user/sayHi methodpostinput typesubmit value提交/form/body
/html 将前端代码要放在static目录下 访问地址url为http://127.0.0.1:8080/user/hello点击提交 从运⾏结果可以看出: RequestMapping 既⽀持Get请求, ⼜⽀持Post请求. 同理, 也⽀持其他的请 求⽅式.
2.2.4 指定GET/POST⽅法类型 可以显⽰的指定RequestMapping 来接收POST的情况如下所⽰:
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;RestController
public class UserController2 {RequestMapping(value /getRequest,method RequestMethod.POST)public String sayHi(){return get request...;}
}
3.postman的学习
3.1 下载安装Postman 略
3.2 创建请求 下图为添加请求页面的介绍 下图为请求的响应结果 3.3 传参介绍
3.3.1 普通传参 学习HTTP环节时我们通过URL来访问互联网上的某一个资源URL的格式如下 其中, 查询字符串就是请求的参数如下所示 3.3.2. form-data (完整表⽰为: multipart/form-data) 表单提交的数据在 form 标签中加上enctypedmultipart/form-data通常用于提交图片 / 文件。对应 Content-Typemultipart/form-data。 3.3.3 x-www-form-urlencoded form表单对应Content-Type: appliction/x-www-from-urlencode 3.3.4 raw 可以上传任意的文本格式例如text、json、xml、html等等如图 ps本次的内容就到这里了如果对你有所帮助的话就请一键三连哦
本文的封面来自bilibili苏杉杉的pv侵权删 urlhttps://www.bilibili.com/video/BV1vo4y167eh/?spm_id_from333.999.0.0vd_source866da5be2ef0ddd213b053523da53138 ————————————————
电子签名上嘉路