文章来源: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. 【CodeForces - 546C】Soldier and Cards (vector或队列)

    Soldier and Cards 老样子,直接上国语吧  Descriptions: 两个人打牌,从自己的手牌中抽出最上面的一张比较大小,大的一方可以拿对方的手牌以及自己打掉的手牌重新作为自己的牌, ...

  2. 51Nod 1174 区间中最大的数(RMQ)

    #include <iostream> #include <algorithm> #include <cstring> using namespace std; + ...

  3. java final static 和final区别

    static 和非static 之间的差异,只有当值在运行期间初始化的前提下,这种差异才会揭示出来.因为编译期间的值被编译器认为是相 同的. package thinking; public clas ...

  4. offsetLeft 与 left的区别

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 记忆化搜索(DFS+DP) URAL 1223 Chernobyl’ Eagle on a Roof

    题目传送门 /* 记忆化搜索(DFS+DP):dp[x][y] 表示x个蛋,在y楼扔后所需要的实验次数 ans = min (ans, max (dp[x][y-i], dp[x-1][i-1]) + ...

  6. iphone6,键盘收起,H5页面下面出现空白

  7. 04.NopCommerce启用MiniProfiler调试

    最近在调试NopCommerce的时候,常遇到一个地址不知道请求哪个路由(比如http://localhost/apparel-shoes,比如http://localhost/login)您能快速说 ...

  8. dangerouslySetHTML 和 style 属性

    这一节我们来补充两个之前没有提到的属性,但是在 React.js 组件开发中也非常常用,但是它们也很简单. dangerouslySetHTML 出于安全考虑的原因(XSS 攻击),在 React.j ...

  9. Tomcat+Jenkins+SonarQube+SVN+Maven 集成自动化环境搭建(Windows10环境下)

    说在前面的话: 从接到任务到完成共用了7天的时间.正常人用不到这个时间. 此时的功能表现是: 登录本地JenKins对项目进行构建,能够自动从SVN读取最新代码并按照Maven项目构建,构建完成能够自 ...

  10. 几种创建线程方式Thread类和Runnable接口

    对于很多想学习java的人来说,经常听别人说线程难,其实真正理解了线程后,一点都不会觉得线程难,这里我为大家梳理下线程的创建方式吧. 一.线程的创建方式有三种 1.继承Thread类 2.实现Runn ...