电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合Swagger框架過程解析

瀏覽:63日期:2023-05-16 10:58:08

Swagger 是一個規范和完整的框架,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務。

總體目標是使客戶端和文件系統作為服務器以同樣的速度來更新。文件的方法、參數和模型緊密集成到服務器端的代碼,允許 API 來始終保持同步。Swagger 讓部署管理和使用功能強大的 API 從未如此簡單。

引入maven依賴

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.10</version> <scope>provided</scope> </dependency>

創建配置類

package com.example.demo.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.env.Environment;import org.springframework.core.env.Profiles;import springfox.documentation.builders.RequestHandlerSelectors;import springfox.documentation.service.ApiInfo;import springfox.documentation.service.Contact;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2;import java.util.ArrayList;/** * @author yvioo。 */@Configuration@EnableSwagger2 //開啟Swagger2public class SwaggerConfig { /** * 配置Swagger的Docket的bean實例 * @return */ @Bean public Docket docket(Environment environment) { //設置只在開發中環境中啟動swagger Profiles profiles=Profiles.of('dev'); //表示如果現在是dev環境,則返回true 開啟swagger boolean flag=environment.acceptsProfiles(profiles); return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())//是否啟動swagger 默認啟動.enable(flag)//所在分組.groupName('yvioo').select()//指定掃描的包路徑.apis(RequestHandlerSelectors.basePackage('com.example.demo.controller'))//指定掃描的請求,這里表示掃描 /hello/ 的請求//.paths(PathSelectors.ant('/hello/**')).build(); } /** * 配置ApiInfo信息 * @return */ private ApiInfo apiInfo() { //作者信息 Contact author = new Contact('yvioo', 'https://www.cnblogs.com/pxblog/', '111@qq.com'); return new ApiInfo('Swagger測試','Swagger描述','1.0','urn:tos',author,'Apache 2.0','http://www.apache.org/licenses/LICENSE-2.0',new ArrayList() ); }}

測試用戶實體類

User.java

package com.example.demo.entity;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.Data;@ApiModel('用戶實體類 User') //增加實體類接口注釋@Data //使用Lombok插件自動生成get set方法,這樣才能在swagger中顯示屬性值public class User { @ApiModelProperty('用戶ID') //增加字段接口注釋 private Integer id; @ApiModelProperty('用戶名') private String username;}

測試控制器

SwaggerController.java

package com.example.demo.controller;import com.example.demo.entity.User;import io.swagger.annotations.ApiOperation;import io.swagger.annotations.ApiParam;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class SwaggerController { @GetMapping('/hello') public String hello(){ return 'hello'; } /** * 接口返回值含有實體類,就會被swagger掃描 * * @return */ @ApiOperation('查詢用戶方法注釋') @GetMapping(value = '/get/{id}') public User get(@ApiParam('請求參數注釋') @PathVariable(value = 'id')Integer id){ return new User(); }}

使用dev環境 啟動項目后 瀏覽器打開http://localhost:8081/swagger-ui.html#/ 我這里用的端口是8081

顯示效果

SpringBoot整合Swagger框架過程解析

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 英国公司注册-新加坡公司注册-香港公司开户-离岸公司账户-杭州商标注册-杭州优创企业 | MOOG伺服阀维修,ATOS比例流量阀维修,伺服阀维修-上海纽顿液压设备有限公司 | 河南生物显微镜,全自动冰冻切片机-河南荣程联合科技有限公司 | 招商帮-一站式网络营销服务|互联网整合营销|网络推广代运营|信息流推广|招商帮企业招商好帮手|搜索营销推广|短视视频营销推广 | 贵州科比特-防雷公司厂家提供贵州防雷工程,防雷检测,防雷接地,防雷设备价格,防雷产品报价服务-贵州防雷检测公司 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 耐酸碱泵-自吸耐酸碱泵型号「品牌厂家」立式耐酸碱泵价格-昆山国宝过滤机有限公司首页 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 书法培训-高考书法艺考培训班-山东艺霖书法培训凭实力挺进央美 | 臭氧发生器_臭氧消毒机 - 【同林品牌 实力厂家】 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 联系我们老街华纳娱乐公司官网19989979996(客服) | 浇注料-高铝砖耐火砖-郑州凯瑞得窑炉耐火材料有限公司 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 水厂污泥地磅|污泥处理地磅厂家|地磅无人值守称重系统升级改造|地磅自动称重系统维修-河南成辉电子科技有限公司 | 高压负荷开关-苏州雷尔沃电器有限公司 | 机构创新组合设计实验台_液压实验台_气动实训台-戴育教仪厂 | 时代北利离心机,实验室离心机,医用离心机,低速离心机DT5-2,美国SKC采样泵-上海京工实业有限公司 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 安全光栅|射频导纳物位开关|音叉料位计|雷达液位计|两级跑偏开关|双向拉绳开关-山东卓信机械有限公司 | 沈阳网站建设_沈阳网站制作_沈阳网页设计-做网站就找示剑新零售 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | 海鲜池-专注海鲜鱼缸、移动海鲜缸、饭店鱼缸设计定做-日晟水族厂家 | 卫浴散热器,卫浴暖气片,卫生间背篓暖气片,华圣格浴室暖气片 | 收录网| 烟雾净化器-滤筒除尘器-防爆除尘器-除尘器厂家-东莞执信环保科技有限公司 | 防水接头-电缆防水接头-金属-电缆密封接头-不锈钢电缆接头 | 广州物流公司_广州货运公司_广州回程车运输 - 万信物流 | 动物麻醉机-数显脑立体定位仪-北京易则佳科技有限公司 | 云杂志网-学术期刊-首页 | 风电变桨伺服驱动器-风电偏航变桨系统-深圳众城卓越科技有限公司 | 带式压滤机_污泥压滤机_污泥脱水机_带式过滤机_带式压滤机厂家-河南恒磊环保设备有限公司 | 南京租车,南京汽车租赁,南京包车,南京会议租车-南京七熹租车 | 网站建设-临朐爱采购-抖音运营-山东兆通网络科技 | 集装箱标准养护室-集装箱移动式养护室-广州璟业试验仪器有限公司 | 便民信息网_家电维修,家电清洗,开锁换锁,本地家政公司 | 顶呱呱交易平台-行业领先的公司资产交易服务平台 | 卷筒电缆-拖链电缆-特种柔性扁平电缆定制厂家「上海缆胜」 | 洛阳永磁工业大吊扇研发生产-工厂通风降温解决方案提供商-中实洛阳环境科技有限公司 | 橡胶粉碎机_橡胶磨粉机_轮胎粉碎机_轮胎磨粉机-河南鼎聚重工机械制造有限公司 | 蓝莓施肥机,智能施肥机,自动施肥机,水肥一体化项目,水肥一体机厂家,小型施肥机,圣大节水,滴灌施工方案,山东圣大节水科技有限公司官网17864474793 | 废气处理_废气处理设备_工业废气处理_江苏龙泰环保设备制造有限公司 |