跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > Spring Boot接收从前端传过来的数据常用方式以及处理的技巧

Spring Boot接收从前端传过来的数据常用方式以及处理的技巧

时间:2024-04-12 12:30:27 来源:网络cs 作者:言安琪 栏目:卖家故事 阅读:

标签: 数据  方式  技巧  处理  接收 
阅读本书更多章节>>>>

Spring Boot接收从前端传过来的数据常用方式以及处理的技巧

一、params 传参restful风格的请求 二、Body中的form-data 传参三、Body中的raw的json格式 传参

一、params 传参

参数是会拼接到url后面的请求

场景规范:url后面的key值<=3个参数的时候,使用params 传参

支持的请求方式:get(正规的是get方式)、post 都行

例如:
http://localhost:8080/simpleParam?name=Tom&age=10

在postman里面的体现为
在这里插入图片描述

后端接收的接口写法如下
普遍都是使用第一种和第二种去接收

   //(1)直接接收,只要key值相同    @RequestMapping("/simpleParam")    public String simpleParam(String name,Integer age){        System.out.println("name= "+name);        System.out.println("age= "+ age);        return "success";    }    //(2)直接接收,值不同可以使用@RequestParam("name");取别名    @RequestMapping("/simpleParam")    public String simpleParam(@RequestParam("name")String username ,Integer age){        System.out.println("username = "+username );        System.out.println("age= "+ age);        return "success";    }    //(3)实体类接收,注意接收的实体类里面的属性值要和请求url中的key值一样哦   @RequestMapping("/simpleParam")    public String simpleParam(User user){        System.out.println(user);        return "success";    }  //(4)最牛皮的,HttpServletRequest来接受   @RequestMapping("/simpleParam")    public String simpleParam(HttpServletRequest request){        String name= request.getParameter("name");        String age= request.getParameter("age");        return "success";

restful风格的请求

get请求:localhost:8080/users/add3?tom/123456

后端接收的接口写法如下

//(1)使用 @PathVariable@RequestMapping("add3/{name}/{password}")    public String add3(@PathVariable("name") String username, @PathVariable String password){        System.out.println(username+" / "+password);        return "success";    }

二、Body中的form-data 传参

form-data

当需要发送表单数据或上传文件

场景规范:发送表单数据或上传文件

支持的请求方式
只是表单数据的话,get、post (正规的是post方式)都行;
如果存在文件数据,必须是post请求

(1)场景一:只是表单数据(那就和params 传参的后端接收法一样,就不重复写了)

在postman里面的体现为
在这里插入图片描述

(2)场景二:存在文件数据

在postman里面的体现为
在这里插入图片描述

后端接收的接口写法如下

   //(1)使用 HttpServletRequest    @RequestMapping("/simpleParam")    public String simpleParam(HttpServletRequest request) throws IOException {          if (request instanceof MultipartHttpServletRequest) {              MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;                // 获取文件              MultipartFile file = multipartRequest.getFile("file");              String fileName = file.getOriginalFilename();              byte[] fileBytes = file.getBytes();                // 处理文件...                // 获取其他字段              String username = multipartRequest.getParameter("name");                return "File uploaded: " + fileName + ", User: " + username ;          } else {              return "Error: Form must have enctype=multipart/form-data.";          }      }      //(2)使用 @RequestPart    @RequestMapping("/simpleParam")    public String simpleParam(@RequestPart("file") MultipartFile file,              @RequestPart("name") String username) throws IOException {          String fileName = file.getOriginalFilename();          // 处理文件...            return "File uploaded: " + fileName + ", User: " + username;      }  

三、Body中的raw的json格式 传参

支持的请求方式:post (最常见post方式)、PUT和PATCH

在这里插入图片描述
后端接收的接口写法如下

   //(1)使用@RequestBody注解接收JSON对象    @RequestMapping("/simpleParam")    public String simpleParam(@RequestBody User user) {          // 使用User对象中的值          return "Received JSON: " + user.toString();      }  

实体类为:

 public static class User{          private String name;          private Integer age;        //单个实体类         private Cat cat;        //List实体类        private List<Course> courseList;     @Override    public String toString() {        return "User{" +                "name='" + name+ '\'' +                ", age='" + age+ '\'' +                ", cat=" + cat +                ", courseList=" + courseList +                '}';    }}

参考文章
【1】Spring Boot接收从前端传过来的数据常用方式以及处理的技巧
https://blog.csdn.net/aiwokache/article/details/129037252

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-04-12/157538.html,文章来源:网络cs,作者:言安琪,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇:HTML【基础篇】

下一篇:返回列表

文章评论