关于在Controller中如何接收前端参数详解:
JAVA类型 | form表单 | AJAX | Controller类 |
---|---|---|---|
①:基本类型的封装类:String | name=”attr” value=”val” | data{“attr”:”val”} | @RequestParam(“attr”) String s 或自定义类:String attr |
①的数组/List | name=”attr” value=”val1” name=”attr” value=”val2” | data{“attr”:”val1,val2”} | @RequestParam(“attr”) String[] s 或自定义类:String attr[] |
①的数组/List | name=”attr[0]” value=”val1” name=”attr[1]” value=”val2” | data{“attr[0]”:”val1”,”attr[1]”:”val2”} | @RequestParam(“attr”) String[] s 或自定义类:String attr[] |
②:自定义类:String | name=”attr1” value=”val1” name=”attr2” value=”val2” | data{“attr1”:”val1”,”attr2”:”val2”} | @RequestBody或自定义类: |
②的数组/List | name=”list[0].attr” value=”val1” name=”list[1].attr” value=”val2” | data{“list[0].attr”:”val1”,”list[1].attr”:”val2”} | ②里:String attr封装在另一个自定义类里:List<②> list |
Map<String,①> | name=”map[key1]” value=”val1” name=”map[key2]” value=”val2” | data{“map[key1]”:”val1”,”map[key2]”:”val2”} | 封装在另一个自定义类里:Map<String,①> map |
Map<String,②> | name=”map[key1].attr” value=”val1” name=”map[key2].attr” value=”val2” | data{“map[key1].attr”:”val1”,”map[key2].attr”:”val2”} | ②里:封装在另一个自定义类里:Map<String,②> map |