@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 {}