springboot 接收List 入参的几种方法
第一种方式:使用@ModelAttribute 注解 + 对象接收
1. get 请求 入参为 projectIds=1,2,3
2. @RequestMapping("/analysis") 或者 @GetMapping("/analysis") 使用 @ModelAttribute 注解
@RequestMapping("/analysis") public JsonResult queryList (@ModelAttribute PhoneStatisticalAnalysisReq req) { List<PhoneStatisticalAnalysis> result = phoneStatisticalAnalysisService.queryAnalysis(req); return JsonResult.ok(result); }
3.创建一个请求对象,并提供对应的 get set方法 用于注入 参数值
public class PhoneStatisticalAnalysisReq { private List<Long> projectIds; public List<Long> getProjectIds() { return projectIds; } public void setProjectIds(List<Long> projectIds) { this.projectIds = projectIds; } }
4. 结果
第二种方式: 使用 @RequestParam 注解接收
1. get 请求
2.@RequestMapping("/analysis") 或者 @GetMapping("/analysis") 使用 @RequestParam("projectIds") 注解中的参数一定要和 请求地址中的参数一致
@RequestMapping("/analysis") public JsonResult queryList ( @RequestParam("projectIds") List<Long> projectIds) { ... }
传递多个参数
@RequestMapping("/analysis") public JsonResult queryList ( @RequestParam("projectIds") List<Long> projectIds, @RequestParam("projectId") Integer projectId) { .... }
3.结果展示
第三种方式:利用数组接收
1. get请求
2. @RequestMapping("/analysis") 或者 @GetMapping("/analysis") 用数组 接收 名称和 请求参数一一对象即可
@RequestMapping("/analysis") public JsonResult queryList ( Long[] projectIds, Integer projectId) { .... }
3. 结果
第四种方式:
1.post方式请求: json 传送 入参 [1,2,3]
2. 发送请求 请求参数为 必须加入 @RequestBody List<Long> projectIds 注解
@PostMapping("/analysis") public JsonResult queryList (@RequestBody List<Long> projectIds) { .... }
3.结果
第五种方式: @RequestBody 加 对象 接收
1.post Json 请求
2.@RequestBody 加对象
@RequestMapping("/analysis") public JsonResult queryList (@RequestBody PhoneStatisticalAnalysisReq req) { .... }
对象 :
public class PhoneStatisticalAnalysisReq { private Long projectId; private List<Long> projectIds; public Long getProjectId() { return projectId; } public void setProjectId(Long projectId) { this.projectId = projectId; } public List<Long> getProjectIds() { return projectIds; } public void setProjectIds(List<Long> projectIds) { this.projectIds = projectIds; } }
3.结果
第六种方式: 接收list<T>对象
1.请求方式 post json
[ {undefined "projectId":"1", "projectIds":[2,3] }, {undefined "projectId":"2", "projectIds":[4,5] } ]
2. @RequestBody List<PhoneStatisticalAnalysisReq> req
@RequestMapping("/analysis") public JsonResult queryList (@RequestBody List<PhoneStatisticalAnalysisReq> req) { .... }
3. 结果
第七种方式: 利用String 接收然后参数,然后在后台强转
1. get请求
2. 关于强转成list 这里就不做过多赘述
@RequestMapping("/analysis") public JsonResult queryList (String params) { .... }
3. 结果
到此这篇关于springboot 接收List 入参的几种方法的文章就介绍到这了,更多相关springboot 接收List 入参内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
JDK14的新特性NullPointerExceptions的使用
这篇文章主要介绍了JDK14的新特性NullPointerExceptions的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-04-04使用自定义参数解析器同一个参数支持多种Content-Type
这篇文章主要介绍了使用自定义参数解析器同一个参数支持多种Content-Type的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08
最新评论