当前位置: 首页 > news >正文

精湛的中山网站建设上海网络推广渠道

精湛的中山网站建设,上海网络推广渠道,整站优化 快速排名,python语言是什么文章目录Swagger3常用配置注解接口测试API信息配置Swagger3 Docket开关,过滤,分组Swagger3常用配置注解 ApiImplicitParams,ApiImplicitParam:Swagger3对参数的描述。 参数名参数值name参数名value参数的具体意义,作用。required参…

文章目录

        • Swagger3常用配置注解
        • 接口测试
        • API信息配置
        • Swagger3 Docket开关,过滤,分组

Swagger3常用配置注解

@ApiImplicitParams,@ApiImplicitParam:Swagger3对参数的描述。

参数名参数值
name参数名
value参数的具体意义,作用。
required参数是否必填。
dataType参数的数据类型。
paramType查询参数类型

paramType有如下几种形式:

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

@ApiResponses, @ApiResponse:Swagger3对响应信息的描述。

参数名参数值
code响应码:400
message信息,例如:请求参数类型错误。
response抛出异常的类。

Controller层

package com.xct.swagger_1.controller.one;import com.xct.swagger_1.entity.User;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;/*** @author xct* @date 2023年03月01日 16:08*/
@Api("接口测试")
@RestController
@RequestMapping("novel")
public class Test1Controller {@ApiOperation("测试功能1")@GetMapping("hello")public String test(){return "HelloYc";}@PostMapping("search")@ApiImplicitParams({@ApiImplicitParam(name="name",value ="姓名",required=true,paramType="query"),@ApiImplicitParam(name = "age",value = "年龄",required = true,paramType = "query",dataType = "Integer")})@ApiOperation("测试查询")public String search(String name,Integer age){return name+":"+age;}@ApiOperation("测试增加")@PostMapping("add")public String add(@RequestBody User user){return user.getName()+":"+user.getAge();}@GetMapping("user/{id}")@ApiOperation("根据id获取用户信息")@ApiImplicitParams({@ApiImplicitParam(name = "id",value = "用户编号",required = true,paramType = "path")})@ApiResponses({@ApiResponse(code=500,message = "后端代码错误"),@ApiResponse(code=400,message = "请求参数类型错误"),@ApiResponse(code=404,message = "请求路径错误")})public User load(@PathVariable("id") Long id){return new User(id,"jack",32,1,"无");}
}

接口测试


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

API信息配置

SwaggerConfig配置文件

package com.xct.swagger_1.config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;@Configuration
//@EnableSwagger2 //swagger3版本不需要使用这个注解,当然写上也无所谓~
public class SwaggerConfig {//配置Swagger的Docket bean@Beanpublic Docket createRestApi1() {return new Docket(DocumentationType.OAS_30)// 指定Swagger3.0版本.groupName("开发组001").select().apis(RequestHandlerSelectors.basePackage("com.xct.swagger_1.controller.one"))//扫描指定包下的api.build().apiInfo(createApiInfo());}@Beanpublic Docket createRestApi2() {return new Docket(DocumentationType.OAS_30)// 指定Swagger3.0版本.groupName("开发组002").select().apis(RequestHandlerSelectors.basePackage("com.xct.swagger_1.controller.two"))//扫描指定包下的api.build().apiInfo(createApiInfo());}@Beanpublic ApiInfo createApiInfo() {return new ApiInfoBuilder().title("yc&xct管理平台").description("yc&xct管理平台 API接口文档").license("南京信息技术有限公司").licenseUrl("").version("1.0").build();}
}

Swagger3 Docket开关,过滤,分组

开关:调用enable方法。
开:

在这里插入图片描述
关:

在这里插入图片描述
过滤:调用select方法;通过apis方法,basePackage可以根据包路径来生成特定类的API,any方法是默认所有都有效,none方法都无效。withClassAnnotation根据类注解,withMethodAnntation是根据方法注解,一般我们用的是basePackage方法。

控制器1:

package com.xct.swagger_1.controller.one;import com.xct.swagger_1.entity.User;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;/*** @author xct* @date 2023年03月01日 16:08*/
@Api("接口测试")
@RestController
@RequestMapping("novel")
public class Test1Controller {@ApiOperation("测试功能1")@GetMapping("hello")public String test(){return "HelloYc";}@PostMapping("search")@ApiImplicitParams({@ApiImplicitParam(name="name",value ="姓名",required=true,paramType="query"),@ApiImplicitParam(name = "age",value = "年龄",required = true,paramType = "query",dataType = "Integer")})@ApiOperation("测试查询")public String search(String name,Integer age){return name+":"+age;}@ApiOperation("测试增加")@PostMapping("add")public String add(@RequestBody User user){return user.getName()+":"+user.getAge();}@GetMapping("user/{id}")@ApiOperation("根据id获取用户信息")@ApiImplicitParams({@ApiImplicitParam(name = "id",value = "用户编号",required = true,paramType = "path")})@ApiResponses({@ApiResponse(code=500,message = "后端代码错误"),@ApiResponse(code=400,message = "请求参数类型错误"),@ApiResponse(code=404,message = "请求路径错误")})public User load(@PathVariable("id") Long id){return new User(id,"jack",32,1,"无");}
}

控制器2:

package com.xct.swagger_1.controller.two;import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;/*** @author xct* @date 2023年03月01日 16:08*/
@Api("接口测试2")
@RestController
@RequestMapping("novel")
public class Test2Controller {@ApiOperation("测试功能2")@GetMapping("hello2")public String test(){return "HelloYc2";}}

测试:
basePackage:指定包路径下的api
在这里插入图片描述

any:任何api都有效。


none:任何api都无效。


分组


在这里插入图片描述

该文章参考多方文档

http://www.shuangfujiaoyu.com/news/24820.html

相关文章:

  • vb.net做网站宁波超值关键词优化
  • 网站开发维护费计入什么科目东莞关键词优化实力乐云seo
  • wordpress网站显示不全网络营销有哪些推广方式
  • 网站做代理服务器博客程序seo
  • wordpress提交评论卡死武汉seo报价
  • 做门面商铺比较好的网站软文营销的作用有哪些
  • 网站url命名规则把百度网址大全设为首页
  • 学雷锋 做美德少年网站排位及资讯
  • 微商可以做网站推广吗sem账户托管外包
  • 大学生做网站赚钱流程竞价推广账户竞价托管费用
  • 系统难还是网站设计难做杭州优化建筑设计
  • 长春有几个火车站网络推广营销方案100例
  • 重庆网站建设加q.4791857001小时快速搭建网站
  • 开发网站教程elo机制
  • 一个公司的网站怎么做的珠海seo推广
  • 苏州微网站开发国际羽联最新排名
  • 做家装家居网站yahoo搜索引擎
  • 深圳做h5网站设计域名是什么意思呢
  • 阿里主机 wordpress抖音优化公司
  • 泉州有哪些做网站的搜索优化
  • 购物网站建设款流程百度域名购买
  • 2023新闻摘抄10条如何优化网络速度
  • 马鞍山网站建设价格企业网站建设cms
  • 广州住房城乡建设委网站seo综合查询站长工具怎么用
  • 毕设 网站开发的必要性在线网站建设
  • 动漫做美食的视频网站免费一键搭建网站
  • 忻州网站建设平面设计培训费用一般是多少
  • asp网站开发参考文献哪些平台可以发广告
  • 怎么做电影网站教程百度seo按天计费
  • 汕头市通信建设管理局网站aso关键词搜索优化