文章来源:https://www.cnblogs.com/hello-tl/p/9204279.html

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

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

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

package com.web.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController; @RestController
@Api(value="apiTest", description="apiTest 控制器")
@RequestMapping("/apiTest")
public class ApiTestController {
// @ApiOperation 用于方法上
// @ApiParam 用于方法,参数,字段说明,表示对参数的添加元数据(说明或是否必填等)    // 1.@ApiParam   是注解api的参数 ,也就是用于swagger提供开发者文档 ,文档中生成的注释内容 。
// 接受 POST 或者 GET 参数
// @ApiOperation(value = "api说明", notes = "接口发布说明", httpMethod = "请求方式 [ POST | GET ]")
@ApiOperation(value = "测试ApiOperation" , notes = "测试ApiOperation", httpMethod = "GET")
// @RequestMapping(value = "URL地址" , method = "传输方式 [ RequestMethod.GET | RequestMethod.POST] ")
@RequestMapping(value = "/ApiTest1" , method = RequestMethod.GET)
public String ApiTest1(
// @ApiParam ( name = "参数名称" , value = "api描述" , required = 是否必传[ true(必传) 接收的值 | false(非传) 默认等于 null ] ) 类型 参数绑定
@ApiParam(name = "ApiParam",value="测试ApiParam",required = true) String ApiParam){
/**
* 访问 localhost:8080/apiTest/ApiTest1
* 页面打印是空的并没有报错说 缺少ApiParam参数 这是因为 ---- ApiParam 里面 required 参数是配合 swagger-ui 用的
*
* 下伙子不要冲动---这是后可以访问一下 localhost:8080/apiTest/ApiTest2 试试
*/
return ApiParam;
}    // 2.@RequestParam,是获取前端传递给后端的参数,可以是get方式,也可以是post方式。其中如果前端传递的参数和后端你接受的参数起的名字字段是一致的可以省略不写,也可以直接写@RequestParam String title,如果不一致一定要完整写
// 接受 POST 或者 GET 参数
@ApiOperation(value = "测试ApiOperation" , notes = "测试ApiOperation", httpMethod = "GET")
@RequestMapping(value = "/ApiTest2" , method = RequestMethod.GET)
public String ApiTest2(
// @RequestParam(name = "参数名称",required = "是否必传[ true(必传) | false(非传) ] 默认 true", defaultValue = "默认值") 类型 参数绑定
@ApiParam(name = "ApiParam",value="测试ApiParam",required = true)
@RequestParam(name = "ApiParam",required = true) String ApiParam){
/**
* @RequestParam(name = "ApiParam",required = false, defaultValue = "ApiParam 默认值") String ApiParam
* 访问 localhost:8080/apiTest/ApiTest2
* 会返回 ApiParam 默认值
*
* @RequestParam(name = "ApiParam",required = true) String ApiParam
* 访问 localhost:8080/apiTest/ApiTest2
* 会报错 字符串参数 ApiParam 不存在
*
* 访问 localhost:8080/apiTest/ApiTest2?ApiParam=测试地址
* 会返回 测试地址
*/
return ApiParam;
} // 3.获取url后面参数,进行参数绑定
@ApiOperation(value = "测试ApiOperation" , notes = "测试ApiOperation", httpMethod = "GET")
@RequestMapping(value = "/ApiTest3/{ApiParam}" , method = RequestMethod.GET)
public String ApiTest3(
@ApiParam(name = "ApiParam",value="测试ApiParam",required = true) @PathVariable String ApiParam){
/**
* 访问 localhost:8080/apiTest/ApiTest3
* 出返回 404
*
* 访问 localhost:8080/apiTest/ApiTest3/测试地址
* 出返回 测试地址
*/
return ApiParam;
}
}

文章来源:https://www.cnblogs.com/hello-tl/p/9204279.html

@ApiParam @RequestParam @PathVariable 用法的更多相关文章

  1. @RequestParam和@PathVariable用法小结

    @RequestParam 使用@RequestParam接收前段参数比较方便,前端传参的URL: url = “${ctx}/main/mm/am/edit?Id=${Id}&name=${ ...

  2. @RequestParam和@RequestBody和@PathVariable用法小结

    @RequestParam 使用@RequestParam接收前段参数比较方便,前端传参的URL: url = "${ctx}/main/mm/am/edit?Id=${Id}&na ...

  3. SpringMVC常用注解實例詳解1:@Controller,@RequestMapping,@RequestParam,@PathVariable

    我的開發環境 框架:        springmvc+spring+freemarker 開發工具: springsource-tool-suite-2.9.0 JDK版本: 1.6.0_29 to ...

  4. @RequestParam @PathVariable

    1.Request参数 在访问各种各样网站时,经常会发现网站的URL的最后一部分形如:?xxxx=yyyy&zzzz=wwww.这就是HTTP协议中的Request参数,它有什么用呢?先来看一 ...

  5. SpringMVC @RequestBody @RequestParam @PathVariable 等参数绑定注解详解

    request 数据到handler method 参数数据的绑定所用到的注解和什么情形下使用: http://blog.csdn.net/walkerjong/article/details/794 ...

  6. @RequestParam,@PathVariable,@ResponseBody,@RequestBody,@ModelAttribute学习

    1.@RequestParam使用于参数上,用于将请求参数映射到指定参数变量上 例如: @RequestMapping(value="/hello",method=RequestM ...

  7. @RequestParam,@PathVariable,@RequestBody

    @RequestParam 和 @PathVariable 注解是用于从request中接收请求的,两个都可以接收参数,关键点不同的是@RequestParam 是从request里面拿取值,而 @P ...

  8. msql中@RequestParam、@Param、@PathVariable的用法

    @RequestParam的用法 1.可以对传入参数指定参数名,将请求参数绑定至方法参数 // 下面的对传入参数指定为aa,如果前端不传aa参数名,会报错 @RequestParam(value=&q ...

  9. springmvc请求路径和请求参数的获取注解- @PathVariable和@RequestParam

    @PathVariable和@RequestParam @PathVariable是从路径里面去获取变量,也就是把路径当做变量. @RequestParam是从请求里面获取参数. 如:url:http ...

随机推荐

  1. ES6之箭头函数深入理解

    相对于普通函数的区别 新的书写方式 this 的改变 不能当构造函数 没有 prototype 属性 没有 arguments 对象 新的书写方式 书写方式很简单!直接看下图, 常规方式写一个函数 c ...

  2. Luogu P1265修复公路【Prim最小生成树】By cellur925

    题目传送门 政府审批的规则如下: (1)如果两个或以上城市申请修建同一条公路,则让它们共同修建: (2)如果三个或以上的城市申请修建的公路成环.如下图,A申请修建公路AB,B申请修建公路BC,C申请修 ...

  3. pycharm 整段缩进

    转自 https://blog.csdn.net/zoulonglong/article/details/79869787 在使用pycharm时,经常会需要多行代码同时缩进.左移,pycharm提供 ...

  4. Java | 基础归纳 | set

    用于存储无序(存入和取出的顺序不一定相同)元素,值不能重复.

  5. 微信小程序资料收集(一)

    1.微信小程序用户授权 https://blog.csdn.net/qq_34827048/article/details/77990510 https://blog.csdn.net/qq_3361 ...

  6. Discovering Gold LightOJ - 1030 || 概率与期望求法区别

    #include<cstdio>//wrong_codes #include<algorithm> using namespace std; ],anss; ],T,TT,n, ...

  7. 使用 Realm 和 Swift 创建 ToDo 应用

    原文出处: HOSSAM GHAREEB   译文出处:Prayer’s blog(@EclipsePrayer) 智能手机的快速发展的同时,涌现出了很多对开发者友好的开发工具,这些工具不仅使得开发变 ...

  8. python_9(模块补充)

    第1章 re模块补充 1.1 贪婪匹配:回溯算法 1.2 .*?的用法 1.3 例:分组<name>取值 1.4 匹配整数删除小数 1.5 正则测试地址 第2章 重点模块 2.1 hash ...

  9. [转]深入浅出WPF(7)——数据的绿色通道,Binding

    本文转自:http://liutiemeng.blog.51cto.com/120361/95273 小序: 怎么直接从2蹦到7啦?!啊哦,实在是不好意思,最近实在是太忙了,忙的原因也非常简单——自己 ...

  10. Xml文档数据提取到Excel表中

    近期,财务一位同事,吐槽:<某XX开票软件>导出数据文档只有Xml格式,竟然没有Excel文档,工作起来非常不方便,希望我想想办法.上图: 需求分析:Xml数据----> 提取到Da ...