JSON parse error: Cannot deserialize value of type `java.util.ArrayList<java.lang.String>`

问题描述:

  • 在前后端传递参数时,如果为JSON,后端使用@RequestBody对象类型接受数据,会出现 500/400错误。

    在这里插入图片描述

  • 也就是说,在前后端发送数据时,出现JSON格式转换错误,从而访问不到后台接口。

  • 不添加@RequestBody虽然可以成功访问,但是无法获取到对象数据

  • 警告内容:在这里插入图片描述

解决:

  • 不要使用对象类型接受,统一使用 Map 接收数据,就不会出现上述情况
  • @RequestBody Map data取代@RequestBody ArrayList data
	// http://localhost:5679/student/select4
	// {"list":["计算机系","英语系"]}
	@PostMapping("/select4")
	public List select4(@RequestBody Map list) {
		return studentService.select4(list);
	}

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/ff58b5579c.html