@PostMapping和@GetMapping用法详解

一、使用post方法调用

1.前端传递参数如果是一个object的话

如{id:‘1’,name:‘2222’}

后端参数接收的话,需要使用@RequestBody ApplyObject applyObject
requestBody后面放置的是一个实体类

@PostMapping(value = "/generatedData")
public Result<?> generatedData(@RequestBody ApplyObject applyObject) throws Exception {
}		

不想用实体类接收的话,可以用JSONObject来接收 这个包package com.alibaba.fastjson;

@PostMapping(value = "/generatedData")
public Result<?> generatedData(@RequestBody JSONObject jsonObject) throws Exception {
    String id = jsonObject.getString("id");
    String name = jsonObject.getString("name");
//这样也是可以拿到你想要的值的
}

2.前端传递的参数如果是一个拼接的带?的字符串的话

如 xxx/generatedData?id=1&name=222

后端的参数接收就需要使用 @RequestParam(“id”) String id
@RequestParam 加上问号后面对应的字段名称

@PostMapping(value = "/generatedData")
public Result<?> generatedData( @RequestParam("id") String id, 
								@RequestParam("name") String name) throws Exception {
}

二、使用get方法

1. 前端传递参数如果是一个object的话

如{id:‘1’,name:‘2222’}

后端参数接收的话,里面放置的是一个实体类

@GetMapping(value = "/generatedData")
public Result<?> generatedData(ApplyObject applyObject) throws Exception {
}

2. 前端传递的参数如果是一个拼接的带?的字符串的话

如 xxx/generatedData?id=1&name=222

后端的参数接收就需要使用 也是使用@RequestParam(“id”) String id
@RequestParam 加上问号后面对应的字段名称

@GetMapping(value = "/generatedData")
public Result<?> generatedData( @RequestParam("id") String id, 
								@RequestParam("name") String name) throws Exception {
}

3.前端传递参数的路径中存在占位符

如 xxx/generatedData/id ,id中放置的是具体的值

后端参数接收的话,需要使用@PathVariable String id

@GetMapping(value = "/generatedData/{id}")
public Result<?> generatedData(@PathVariable("id") String id) throws Exception {
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。