最近使用SpringMVC接收数组参数遇到一些问题,记录在此,最后是解决办法。html
问题描述:前端传参为[1,2,3,4,5],后端使用发现,数组的第一个元素会被封装为[1,最后一个元素会被封装为5],这样是有问题的。前端
方式一前端传参:后端
方式一后端接收:数组
到网上找了半天,都说使用下面这种方式接收,结果仍是同样.net
@RequestParam(value = "photos[]")
方式二前端传参:3d
方式二后端接收:htm
方式三前端传参:blog
方式四后端接收:字符串
若是前端传参为逗号分隔的形式,没有中括号,后端接收后能够正常解析为数组格式。若是前端必须传递带中括号的方式,例如方式1,后端能够将中括号等符号进行替换为只有逗号拼接格式的字符串,而后使用spilt转换为数组或者集合进行处理也能够。get
方式五前端传参:
方式五后端接收:
这种方式也能够接收,即前端传参为photos=1&photos=2&photos=3&photos=4&photos=5这种格式的。
Refer: