Hi~!这里是一颗小谷粒,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~
💥💥个人主页:一颗小谷粒
💥💥所属专栏:Spring全家桶💥💥博主微信:g2279605572 (海漫浩浩,我亦苦作舟!大家一起学习,一起进步!)
🚀本系列文章为个人学习笔记,在这里撰写成文一为巩固知识,二为记录我的学习过程及理解。文笔、排版拙劣,望见谅。
目录
Spring Web 是 Spring 框架中的一个重要模块,主要用于构建 Web 应用程序。
1. 搭建 Spring Web
首先先来快速搭建一个 Spring Web 的 Hello World 让大家看看通过框架封装的Web层接收数据有多么的简单方便!
注意:Spring框架还是需要配置的,SpringWeb只是在Spring框架的基础上对Web层进行了封装而已。
不会的小伙伴参考: Spring框架:开发者的得力伙伴,魅力何在?-优快云博客
① 在pom.xml配置文件中添加依赖 (JavaEE项目)
<!-- Spring Web-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
<!-- spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
<!--jackson-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
<!-- lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
<scope>provided</scope>
</dependency>
② 在web.xml文件中配置DispatcherServlet
<servlet>
<servlet-name>application</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<!--请求映射-->
<servlet-mapping>
<servlet-name>application</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
③ 在spring配置文件中开启注解
<!--Spring注解扫描-->
<context:component-scan base-package="com.ffyc.springweb"></context:component-scan>
<!--开启web层注解-->
<mvc:annotation-driven></mvc:annotation-driven>
④ 测试
这里我使用的是Apipost测试工具,用来模拟前端向后端发送请求:
(大家也可以下载,亲测安全好用!)
2、接收请求
2.1 @RequestMapping接收
@RequestMapping注解标签用在类或方法上,为我们的类和方法定义访问地址,且在类上面定义的地址不能重复。常用属性有 path , method。path 用来定义地址,method 则用来定义请求方式。
@RequestMapping(path = "定义访问地址",method = RequestMethod.GET)
@RequestMapping(path = "定义访问地址",method = RequestMethod.POST)
2.2 @GetMapping接收
@GetMapping用来接收 get 请求,只需定义访问地址即可(path)
@GetMapping(path = "定义访问地址")
2.3 @PostMapping接收
@GetMapping用来接收 post 请求,同样也只需定义访问地址即可
@PostMapping(path = "定义访问地址")
3. 获取请求数据
Spring Web 支持对多种类型的请求参数进行封装。
3.1 使用Request对象接收
测试:启动服务器,使用测试软件模拟向后端发送请求
3.2 spring 自动封装
当请求参数名与形参名一致时,Spring 会自动进行数据封装。这里要注意的是:处理器接收参数的形参名称必须和表单的name属性保持一致,否则会接收失败。
3.3 @RequestParam参数绑定
当请求参数名与形参名不一致时,可以使用@RequestParam("")进行参数绑定
表单的name和控制器的形参并不一致,但是@RequestParam注解的value 值必须和表单的name保持一致。
3.4 使用实体类对象接收
@RequestBody标签的作用是:接收前端提交的 json格式数据,将 json格式数据封装到对象中.
注意:通过实体类对象接收数据时,前端提交的数据必须是 json格式。所以这里不要忘了还需要添加 json转换组件:
<!-- json组件-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
测试:启动服务器,使用测试软件模拟向后端发送请求
测试成功:
3.5 日期类型转换
属性类型为Date类型需要指定转换格式:
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date birthday;
本次的分享就到此为止了,希望我的分享能给您带来帮助,创作不易也欢迎大家三连支持,你们的点赞就是博主更新最大的动力!
如有不同意见,欢迎评论区积极讨论交流,让我们一起学习进步!
有相关问题也可以私信博主,评论区和私信都会认真查看的,我们下次再见