mem*_*und 5 java rest spring spring-mvc
我想创建一个 REST-GET 控制器,它spring-mvc
接受一个对象列表,例如 10 个 id,如下所示:
@RestController
public class MyRest {
@RequestMapping(method = RequestMethod.GET)
public Object test(@RequestParam value="id" required=false) List<Integer> ids) {
Sysout(ids);
}
}
Run Code Online (Sandbox Code Playgroud)
无论如何,当我调用它时,我必须多次重复 id 参数:
localhost:8080/app?id=1&id=2&id=3&...
Run Code Online (Sandbox Code Playgroud)
可以将参数更改为某种列表吗?例如
app?id=1,2,3,4,5
Run Code Online (Sandbox Code Playgroud)
如果是,这是否可取?从客户的角度来看,什么更好?
最好使用以 JSON 或 XML 作为请求正文的 POST 消息。因为你永远不知道会传递多少个 id。
@RestController
public class MyRest {
@RequestMapping(method = RequestMethod.POST)
public Object test(@RequestBody IDRequest request) {
Sysout(ids);
}
public static final class IDRequest {
List<Integer> ids;
<!-- getter/setters--->
}
}
Run Code Online (Sandbox Code Playgroud)
其中请求将是某种 JSON 或 XML,如下所示
{"ids":[1,2,3,4,5,6,7,8,9]}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10718 次 |
最近记录: |