前言
🌟🌟本期讲解关于SpringMVC的基础概念,以及如何实现与浏览器的连接,参数的传递~~~
🔥 你的点赞就是小编不断更新的最大动力
🎆那么废话不多说直接开整吧~~
📚️1.Spring MVC基础概念
1.1什么是Spring MVC
1.2什么是MVC
📚️2.学习Spring MVC
2.1理解交互模式
2.2创建Spring MVC项目
2.3建立连接
1.@RequestMapping 注解介绍
2.@RestController
2.4@RequestMapping的使用
1.@RequestMapping的请求方法
📚️3.总结
📚️1.Spring MVC基础概念
1.1什么是Spring MVC
翻译过来就是:
Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中。它的正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc),但它通常被称为"Spring
MVC
这里的servlet含义:其实就是一个实现动态⻚⾯的技术. 准确来讲Servlet是⼀套 Java Web 开发的规范,Servlet 规范的产品包括 Tomcat、Weblogic、Jetty、Jboss、WebSphere 等,它们都被称
为"Servlet 容器". Servlet 容器⽤来管理程序员编写的 Servlet 类
总结:
Spring Web MVC其实就是一个Web框架,下面我们简称是Spring MVC
1.2什么是MVC
MVC 是 Model View Controller 的缩写,它是软件⼯程中的⼀种软件架构设计模式,它把软件系统分为模型、视图和控制器三个基本部分
如下图所示:
解释:
• View(视图) 指在应⽤程序中专⻔⽤来与浏览器进⾏交互,展⽰数据的资源.
• Model(模型) 是应⽤程序的主体部分,⽤来处理程序中数据逻辑的部分.
• Controller(控制器)可以理解为⼀个分发器,⽤来决定对于视图发来的请求,需要⽤哪⼀个模型来处理,以及处理完后需要跳回到哪⼀个视图。即⽤来连接视图和模型
这里我们可以理解是:餐厅中,顾客给服务员说要什么菜,再由服务员告诉前台说要做什么菜,然后前台再告诉后台的厨师做什么,然后再又前台将做好的饭菜端上某个客户的餐桌;
总之:MVC其实就是一种软件架构的设计思想;
而上述的Spring MVC其实就是C 是对 MVC 思想的具体实现. 除此之外,Spring MVC还是⼀个Web框架.
总结来说:Spring MVC 是⼀个实现了 MVC 模式的 Web 框架
问题:这里的Spring Boot和Spring MVC的区别是什么?
回答:其实Spring Boot只是实现Spring MVC的一种模式而已Spring Boot 可以添加很多依赖, 借助这些依赖实现不同的功能. Spring Boot 通过添加Spring Web MVC框架, 来实现web功能.
所以可以理解为:SpringBoot就是实现了Spring MVC的封装而已,且不止有Spring MVC这一个模式;
在新的软件架构模式中,以下是另当前使用的方式:
其实这里即时直接 由客户告诉前台做什么菜,从而直接省去了给服务员说的流程2.xue
📚️2.学习Spring MVC
2.1理解交互模式
既然是 Web 框架, 那么当⽤⼾在浏览器中输⼊了 url 之后,我们的 Spring MVC 项⽬就可以感知到⽤⼾的请求, 并给予响应.
咱们学习Spring MVC, 重点也就是学习如何通过浏览器和⽤⼾程序进⾏交互.
2.2创建Spring MVC项目
Spring MVC 项⽬创建和 Spring Boot 创建项⽬相同,在创建的时候选择 Spring Web 就相当于创建了 Spring MVC 的项⽬.
创建项⽬时, 勾选上 Spring Web 模块即可,如下图所⽰:
然后这里点击next后,就会出现如下的情况,然后点击web中的Spring Web;
2.3建立连接
首先当我们创建号一个spring mvc项目后写入以下的代码,其实就是和浏览器进行连接:
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class RequestController {
@RequestMapping("/hello")
public String request1(){
return "你好 Spring Boot";
}
}
此时那么就可以在浏览器输入URL进行连接访问这里的方法:
此时就表示已经建立的连接了,那么这里是如何进行连接的呢?
1.@RequestMapping 注解介绍
@RequestMapping 是 Spring Web MVC 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的
路由映射的.
表⽰服务收到请求时, 路径为 /sayHi 的请求就会调⽤ sayHi 这个⽅法的代码.
路由映射: 当⽤⼾访问⼀个 URL 时, 将⽤⼾的请求对应到程序中某个类的某个⽅法的过程就叫路由映射
所以当我们输入URL后就会通过这里的URL进行路由映射,对应到某个方法进行返回打印在显示台上面;
2.@RestController
一个项目中有许多的类,我们的spring怎么知道要执行那个类中的方法呢,这里就要用到@RestController,Spring会对所有的类进⾏扫描, 如果类加了注解@RestController, Spring才会去看这个类⾥⾯的⽅法有没有加 @RequestMapping 这个注解, 当然他的作⽤不⽌这⼀点
2.4@RequestMapping的使用
此时当我们进行一个类的修饰:
@RestController
@RequestMapping("/user")
public class RequestController {
@RequestMapping("/hello")
public String request1(){
return "你好 Spring Boot";
}
}
此时我们在浏览器中进行中进行输入对应的URL就可以进行练级访问了
此时的访问的url就是:127.0.0.1:8080/user/hello如下图所示:
1.@RequestMapping的请求方法
GET方法:
这里就是默认的,此时我们可以通过fiddler进行抓包的处理
进行抓包后,这里的http请求的方法就是GET方法,但是就不能实现POST方法了吗?
POST方法:
我们这里可以通过HTML进行from表单操作:
具体的代码如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="user/hello" method="post">
<input type="submit" value="点击我试试">
</form>
</body>
</html>
此时我们在浏览器进行URL的输如,可以看到此时的浏览器的界面:
点击后就可以自动的跳转,此时我们在进行fiddler抓包处理:
抓包后的结果就是如下的:
可以看到此时的http请求的方法就是:POST
那么总结就是:@RequestMapping的http请求方法可以是GET也可以是POST
当然我们也可以通过对于这个代码进行改动实现POST请求方法:
@RestController
@RequestMapping("/user")
public class RequestController {
@RequestMapping(value = "/hello",method = RequestMethod.POST)
public String request1(){
return "你好 Spring Boot";
}
}
然后进行抓包的处理后,就可发现这里的结果就是:
此时我们可以看到这里的http请求抓包后也是POST方法;
📚️3.总结
本期小编主要讲解了Spring MVC的概念,以及他与Spring Boot的关系,当然还包括简单的Spring mvc项目的代码演示,如何与浏览器建立连接;
🌅🌅🌅~~~~最后希望与诸君共勉,共同进步!!!
💪💪💪以上就是本期内容了, 感兴趣的话,就关注小编吧。
😊😊 期待你的关注~~~