java接收数据的方式

作者: cheng 发布时间: 2023-02-03 浏览: 2465 次 编辑

前端传递数据的方式不同,java 也要使用不同的方式来接收数据。

三种方式

前端传入的数据格式后端接收方式
url中的参数@PathVariable
用 params 传递数据@RequestParam
用 data 传递数据@RequestBody

下面是三个例子。

1. url 中的参数

前端请求地址格式如下

 url:'/delete/'+id,
 method:'post',

如请求的具体地址是 http://localhost:8099/delete/1

那么,java 接收参数格式如下,需要用 @PathVariable 来接收

 @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
 public Boolean delete(@PathVariable("id") Integer id)

2. 请求中用 params 传递数据

前端请求地址格式如下

 url:'/list/'+id,
 method:'get',
 params: {
     pageNum: 1,
     pageSize: 10
 }

假如请求的具体地址是 http://localhost:8099/list/1 ,请求的参数是 pageNum 和 pageSize 。

那么,java 接收参数格式如下,需要用 @RequestParam 来接收单个的参数,一个 @RequestParam 接收一个参数。@RequestParam 中客户以设置接收数据的默认值

 @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
 public List<object> list(@PathVariable("id") Integer id, 
     @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
     @RequestParam(value = "pageSize", defaultValue = "5") Integer pageSize)
</object>

3. 请求中用 data 传递数据

request payload : 提交的数据是列表。

前端请求地址格式如下

 url:'/create',
 method:'post',
 data: {
     name: "手机",
     price: 1000,
     color: “white”
 }

假如请求的具体地址是 http://localhost:8099/create

那么,java 接收参数格式如下,需要用 @RequestBody ,并用一个对象来接收数据。

 @RequestMapping(value = "/create", method = RequestMethod.POST)
 public Boolean create(@RequestBody Product product)

使用对象来接收数据时,接收数据的对象其属性的名字需要和前端传过来的数据名字对应。

接收对象 Product 类,是一个实体类,内容如下:

 public class Product {
     private String name;
     private Integer price;
     private String Color;
     // 省略 get/set 函数
 }