java – @PathVariable和@RequestParam不能一起工作

我的控制器中有以下代码
@RequestMapping(value = "/child/{nodeId}/{relType}",method = RequestMethod.GET,produces=MediaType.APPLICATION_JSON)    
    public Iterable<Node> getConnectednodes(@RequestParam("page")int page,@RequestParam("size")int size,@PathVariable("nodeId") String nodeId,@PathVariable("relType") String relType) {
        return nodeService.getConnectednodes(nodeId,relType,page,size);    
    }

这是我正在打的API网址

http://localhost:8080/node/child/e17a64ff-dc2b-49b1-a995-67dba9413d67/Collegues?page=0&size=1

在调试模式下,我可以看到路径变量的值,即nodeId和relType,但是看不到我在上面的URL中通过我的请求传递的请求参数页面和大小的值.

@RequestParam有什么问题?
请帮忙.

解决方法

你可以试试下面的片段:
@RequestMapping(value = "/child/{nodeId}/{relType}",produces=MediaType.APPLICATION_JSON)    
        public Iterable<Node> getConnectednodes(@RequestParam(value="page",required=false) int page,@RequestParam(value="size",required=false) int size,@PathVariable("relType") String relType) {
            return nodeService.getConnectednodes(nodeId,size);    

}

相关文章

应用场景 C端用户提交工单、工单创建完成之后、会发布一条工...
线程类,设置有一个公共资源 package cn.org.chris.concurre...
Java中的数字(带有0前缀和字符串)
在Java 9中使用JLink的目的是什么?
Java Stream API Filter(过滤器)
在Java中找到正数和负数数组元素的数量