zoukankan      html  css  js  c++  java
  • Spring

    RequestMapping 是一个用来处理请求地址映射的注解,可用于类或方法上。

    •  用于上:表示类中的所有响应请求的方法都是以该地址作为父路径
    • method

      1)说明

      指定请求的method类型, GET、POST、PUT、DELETE等;

      2)示例

      @RequestMapping(value = "/list" , method = RequestMethod.POST)
      public BaseDTO list(@PathVariable String communityId) {
      // TODO
      }

      consumes

      1)说明

      指定处理请求的 提交内容类型 (Content-Type),例如 application/json, text/html

      2)示例

      //方法仅处理request Content-Type为“application/json”类型的请求
      @RequestMapping(value = "/list" , method = RequestMethod.POST,consumes="application/json")
      public void list(@PathVariable String communityId) {
      // TODO
      }

      produces

      1)说明

      指定 返回的内容类型 ,仅当request请求头中的(Accept)类型中包含该指定类型才返回;

      2)示例

      @RequestMapping(value = "/list" , method = RequestMethod.POST,produces="application/json")
      public JSONObject list(@PathVariable String communityId) {
      JSONObject object = new JSONObject();
      object.put("communityId",communityId);
      return object;
      }

      //@responseBody就是返回值是json数据,使用@responseBody,就可以省略produces属性
      @RequestMapping(value = "/list" , method = RequestMethod.POST)
      @ResponseBody
      public JSONObject list(@PathVariable String communityId) {
      JSONObject object = new JSONObject();
      object.put("communityId",communityId);
      return object;
      }

      //返回值是json数据,字符编码为utf-8
      @RequestMapping(value = "/list" , method = RequestMethod.POST,produces="application/json;charset=utf-8")
      public JSONObject list(@PathVariable String communityId) {
      JSONObject object = new JSONObject();
      object.put("communityId",communityId);
      return object;
      }

      params

      1)说明

      指定request中必须包含某些参数值时,才让该方法处理。

      2)示例

      //设定必须包含username 和age两个参数,且age参数不为10 (可以有多个参数)
      @RequestMapping(value = "/list" , method = RequestMethod.POST,params = { "username","age!=10" })
      public JSONObject list(@PathVariable String communityId) {
      JSONObject object = new JSONObject();
      object.put("communityId",communityId);
      return object;
      }

      headers

      1)说明

      指定request中必须包含某些指定的header值,才能让该方法处理请求。

      2)示例

      //仅处理request的header中包含了指定“Refer”请求头和对应值为“http://www.ifeng.com/”的请求;
      @RequestMapping(value = "/list" , method = RequestMethod.POST,headers="Referer=http://www.ifeng.com/")
      public JSONObject list(@PathVariable String communityId) {
      JSONObject object = new JSONObject();
      object.put("communityId",communityId);
      return object;
      }

    •  @CrossOrigin是用来处理跨域请求的注解,跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。
    • origins  : 允许可访问的域列表

      maxAge:准备响应前的缓存持续的最大时间(以秒为单位)

    @ApiOperation() 用于方法;表示一个http请求的操作 
    value用于方法描述 
    notes用于提示内容 
    tags可以重新分组(视情况而用) 

    ApiParam:单个参数描述

    @ApiResponse:HTTP响应其中1个描述

    @ApiResponses:HTTP响应整体描述

    @ApiImplicitParam:
    作用在方法上,表示单独的请求参数 
    参数: 
    1. name :参数名。 
    2. value : 参数的具体意义,作用。 
    3. required : 参数是否必填。 
    4. dataType :参数的数据类型。 
    5. paramType :查询参数类型,这里有几种形式:

    类型 作用
    path 以地址的形式提交数据
    query 直接跟参数完成自动映射赋值
    body 以流的形式提交 仅支持POST
    header 参数在request headers 里边提交
    form 以form表单的形式提交 仅支持POST

  • 相关阅读:
    Android网络框架之Retrofit + RxJava + OkHttp 变化的时代
    网易与Google合作发布开源UI自动化测试方案 牛逼:Google 方面评价,这可能是目前世界上最好的 Android 游戏自动化测试方案。
    GitHub上受欢迎的Android UI Library
    推荐一些socket工具,TCP、UDP调试、抓包工具 (转载)
    pytest 一个测试类怎样使用多种fixture前置方法
    Appium服务器初始化参数(Capability)
    pytest执行用例:明明只写了5个测试用例, 怎么收集到33个!?
    解决VirtualBox 运行时报内存不能written
    VirtualBox 虚拟机怎样设置共享文件夹
    简单通俗讲解 android 内存泄漏
  • 原文地址:https://www.cnblogs.com/laurarararararara/p/13224192.html
Copyright © 2011-2022 走看看