千家信息网

Java中Swagger技术怎么用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关Java中Swagger技术怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Swagger的作用与概念在前后端分离时代,我们需要实时
千家信息网最后更新 2026年11月01日Java中Swagger技术怎么用

这篇文章将为大家详细讲解有关Java中Swagger技术怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

    Swagger的作用与概念

    在前后端分离时代,我们需要实时自动更新接口信息,和测试接口,实现前后端分离式开发,swagger因此产生

    在项目中使用swagger

    以下以3.0.0依赖为例

                         io.springfox            springfox-swagger2            3.0.0                            io.springfox            springfox-swagger-ui            3.0.0                             io.springfox           springfox-boot-starter           3.0.0        
    @RestControllerpublic class HelloController {    @RequestMapping(value = "/hello")    public String hello(){         return "hello";    }}
    @Configuration@EnableSwagger2 //开启swagger2public class SwaggerConfig {}

    然后访问http://localhost:8080/swagger-ui/index.html
    你就能看到如下界面,为swagger文档

    配置swagger

    先来看看底层的代码,了解一下

    ApiInfo 配置

    @Configuration@EnableSwagger2 //开启swagger2public class SwaggerConfig {    @Bean    public Docket docket(){        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo());    }    //配置swagger信息apiInfo    private ApiInfo apiInfo(){        //作者信息        Contact contact = new Contact("宋先慧", "https://blog.csdn.net/sxh06", "xianhuisong@yeah.net");        return new ApiInfo(                "宋先慧的Api Documentation",                "学习swagger没有尽头",                "1.0",                "urn:tos",                contact,                "Apache 2.0",                "http://www.apache.org/licenses/LICENSE-2.0",                new ArrayList());    }}

    swagger配置扫描接口

    @Configuration@EnableSwagger2 //开启swagger2public class SwaggerConfig {//    @Bean//    public Docket docket1(){//        return new Docket(DocumentationType.SWAGGER_2).groupName("分组二");//    }    @Bean    public Docket docket(Environment environment){        Profiles profiles=Profiles.of("dev");        //获取项目的环境         boolean flag=environment.acceptsProfiles(profiles);        return new Docket(DocumentationType.SWAGGER_2)                .apiInfo(apiInfo())                .groupName("宋先慧")  //分组                .enable(flag)  //enable 配置是否启动swagger  flase则不能在浏览器访问                .select()                //RequestHandlerSelectors实现类  配置扫描方式                // basePackage指定要扫描的包                // any()全部                // none()都不扫描                //withClassAnnotation()  扫描类上的注解  参数是一个注解的反射对象                //withMethodAnnotation   扫描方法上的注解                .apis(RequestHandlerSelectors.basePackage("com.sxh.swagger.controller"))                //.apis(RequestHandlerSelectors.withMethodAnnotation(GetMapping.class))                //过滤什么路劲  过滤请求                //.paths(PathSelectors.ant("/sxh/**"))                .build();    }    //配置swagger信息apiInfo    private ApiInfo apiInfo(){        //作者信息        Contact contact = new Contact("宋先慧", "https://blog.csdn.net/sxh06", "xianhuisong@yeah.net");        return new ApiInfo(                "宋先慧的Api Documentation",                "学习swagger没有尽头",                "1.0",                "urn:tos",                contact,                "Apache 2.0",                "http://www.apache.org/licenses/LICENSE-2.0",                new ArrayList());    }}

    如果我只希望在生成环境使用swagger,在正式环境不使用swagger怎么解决?(enable=false|true)

    配置api文档分组

    多个分组

    配置多个Docket 实例即可

     @Bean    public Docket docket1(){        return new Docket(DocumentationType.SWAGGER_2).groupName("分组一");    } @Bean    public Docket docket2(){        return new Docket(DocumentationType.SWAGGER_2).groupName("分组二");    }`

    实体类配置

    关于"Java中Swagger技术怎么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

    配置 分组 信息 接口 注解 环境 篇文章 技术 作者 多个 文档 更多 项目 学习 不错 实用 代码 作用 内容 分离式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技工作委员会副主任毛军 科技互联网龙头 互联网是不是新科技 互联网金融与金融科技 易互联网科技有限公司 互联网金融 科技金融 奇酷互联网络科技公司 奇士达互联网科技 广州善班互联网科技 联恩商钥互联网科技有限公司 互联网科技公司需要的职位 成都铂石互联网科技做什么的 中国航天科技大学国际工业互联网 移动互联网年度科技创新 注册互联网科技公司经营范围大全 电子科技大学互联网创业大赛 易企秀互联网科技是做什么的 唐山双旺合互联网科技产业园 互联网的黑科技实验室 知域互联网科技有限公司官网 互联网科技论文 互联网科技公司有哪些 哈尔滨新华互联网科技 安控科技rtu产品工业互联网 北京华百购互联网科技有限公司 广州市恰铎互联网科技有限公司 青海科技产业互联网发展 江苏互联网智能科技产品出厂价 互联网科技手机排行榜 广州全民伙伴互联网科技有限公司
    0