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

springboot生成前后端接口文档 - f

效果:
image
图片中是访问接口文档的路径
一、基本配置
1.pom.xml中导入依赖:(根据需要的版本导入)

<!-- swagger api文档 --><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><!--swagger ui--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.7.0</version></dependency>

2.在启动类添加注解@EnableSwagger2

package com.xq;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;@SpringBootApplication
@EnableSwagger2//开启对所有控制器的扫描
public class GYMServiceWebApplication {public static void main(String[] args) {SpringApplication.run(GYMServiceWebApplication.class, args);}
}

3.编写配置信息(不重要)

package com.xq.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
@Configuration
public class SwaggerConfig{/*** 创建Docket类型的对象,并使用Spring容器管理* Docket是Swagger中的全局配置对象* @return*/@Beanpublic Docket getDocket() {return new Docket(DocumentationType.SWAGGER_2).apiInfo(swaggerDemoApiInfo()).select().build();}private ApiInfo swaggerDemoApiInfo(){return new ApiInfoBuilder().contact(new Contact("JAVA学习社区","https://www.qq.com","eric@qq.com")) //配置文档主体内容
//文档标题.title("这里是Swagger的标题")
//文档描述.description("这里是Swagger的描述")
//文档版本.version("1.0.0").build();}
}

二、自定义注解和元注解

package com.xq.annotation;import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;/*** 编写自定义注解,一定要加上元注解信息,所谓的元注解就是我们再定义注解的时候必须携带的注解信息,参考springmvc的注解。* 常见的元注解:* @Target:描述的是当前注解需要修饰哪个目标资源.*      @Target(ElementType.TYPE) 描述当前注解可以修饰类或接口*      @Target(ElementType.FIELD) 当前注解可以修饰成员变量*      @Target(ElementType.METHOD)  当前注解可以修饰方法*      @Target(ElementType.PARAMETER) 当前注解可以修饰方法参数*  ......* @Inherited  被修饰的注解具有继承性* @Documented  指的是被修饰的注解可以被javadoc工具提取成文档* @Retention  定义注解的生命周期(保留策略)*      @Retention(RetentionPolicy.SOURCE) 当前注解只会存在源码中,不会被编译,更不会被运行*      @Retention(RetentionPplicy.CLASS)  当前注解会参与编译,但是不会参与运行*      @Retention(RetentionPolicy.RUNTIME)  当前注解既参与编译,有参与运行,在运行时我们会基于反射的机制获取到该注解信息*/@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface NoIncludeSwagger {
}

自定义注解如何起作用:(该注解的作用:不需要生成对应控制器方法的接口文档)
image

http://www.jsqmd.com/news/42108/

相关文章:

  • 20232429 2025-2026-1 《网络与系统攻防技术》实验五实验报告
  • P5797 [SEERC 2019] Max or Min
  • make
  • Spring Cloud - Spring Cloud 注册中心与服务提供者(Spring Cloud Eureka 概述、微服务高效入门、微服务应用实例)
  • DateUtil
  • (链表)找单链表倒数第k个结点
  • (链表)判断是否回文
  • 和为定值的子集数 25-11-16
  • (链表)判断两个单链表是否存在交点
  • (链表)逆置
  • (链表)任意删除一个结点
  • 在抖音直播推广开源作品的可行性?
  • 分布式监控体系:从指标采集到智能告警的完整之道 - 实践
  • hot 100 (1)—— 两数之和(哈希) - 指南
  • DLSS Swapper商业模式:开源软件商业化探索 - 指南
  • 性能优化体系化建设:BI平台的深度优化实践
  • AT_jsc2019_qual_e Card Collector题解
  • 20251115ACC
  • Day40(10)-F:\硕士阶段\Java\课程代码\后端\web-ai-code\web-ai-project01\springboot-mybatis-quickstart
  • 还能回到原先吗 绞尽脑汁翻阅文献 这名为爱的实验 被等号连接
  • irm steam.work|iex 风险分析
  • 2025年11月手动旗杆厂家口碑推荐榜单及选购指南
  • 2025年四川电动旗杆制造厂排行榜TOP5权威发布
  • Pandas --DataFrame基本操作
  • 2025年11月全国旗杆厂家综合实力排行榜TOP5权威发布
  • debian sysctl: cannot open /etc/sysctl.conf: 没有那个文件或目录
  • 完整教程:(Linux) WSL 通过 VSCode 连接不执行 profile 问题(登录Shell问题)
  • 入侵防护技术深度解析:最新漏洞与威胁态势
  • mysql函数大全及举例 - 详解
  • 20232427 2025-2026-1 《网络与系统攻防技术》实验五实验报告