@ApiParam @PathVariable @RequestParam三者区别

1.@ApiParam 是注解api的参数,用于swagger提供开发者文档,文档中生成的注释内容。

@ApiOperation( value = "测试", notes = "测试模块", httpMethod = "POST" )
    @RequestMapping( value = "/demo", method = RequestMethod.POST )
    public RequestResult demo(
            @ApiParam(name = "title", value = "标题", required = true) @RequestParam("title") String title,
            @ApiParam(name = "content", value = "内容", required = true) @RequestParam("content") String content){}

2.@RequestParam,是获取前端传递给后端的参数,可以是get方式,也可以是post方式。其中如果前端传递的参数和后端你接受的参数起的名字字段是一致的可以省略不写,也可以直接写@RequestParam String title,如果不一致一定要完整写,不然获取不到,如下面的demo_id就必须写。

@ApiOperation( value = "测试", notes = "测试模块", httpMethod = "POST" )
    @RequestMapping( value = "/demo", method = RequestMethod.POST )
    public RequestResult demo(
            @ApiParam(name = "demo_id", value = "测试id", required = true) String demoId,
            @ApiParam(name = "title", value = "公告标题", required = true) @RequestParam String title,
            @ApiParam(name = "content", value = "公告内容", required = true)  String content,

3.@PathVariable,是获取get方式,url后面参数,进行参数绑定

@ApiOperation( value = "测试", notes = "测试模块", httpMethod = "POST" )
    @RequestMapping(value = "/delete/{demo_id}", method = RequestMethod.POST)
    public RequestResult remove(@ApiParam(name = "demo_id", value = "需要删除的deme id", required = true) @PathVariable String demo_id) {

你可能感兴趣的:(@ApiParam @PathVariable @RequestParam三者区别)