Springboot 集成 Swagger

本文介绍如何使用Swagger框架自动生成API文档,包括配置依赖、创建配置类、应用注解及访问文档的方法,帮助开发者提高效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Swagger是一个自动生成API文档的 框架,避免了传统的手动编写API文档,然后再发给前段的繁琐。

首先:

1、新建一个Sping boot项目,引入以下依赖:

<dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.6.1</version>
        </dependency>

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.6.1</version>
        </dependency>

2、Swagger配置类:

@Configuration
@EnableSwagger2
public class Swgger2Configuration {

    @Bean
    public Docket createSwagger2Api(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.cn.spring.cloud.jennire.microservice"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo(){
        return new ApiInfoBuilder()
                .title("swagger测试")
                .description("简单容易的API接口文档")
                .version("1.0")
                .build();
    }
}

配置类上需要 有@Configuration 和 @EnableSwagger2 注解  ,需要一个返回Docket的被@Bean注释的 方法,名字随意取。

此方法中,new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()) .....   ; apiInfo()方法,执行了Swagger的一些基本信息,这些都是开发人员自己指定;

3、在Application上加EnableSwagger2注解  ,开启Swagger:

@SpringBootApplication
@EnableSwagger2
public class MicroserviceApplication {

    public static void main(String[] args) {
        SpringApplication.run(MicroserviceApplication.class, args);
    }
}

4、在接口上加入Swagger:

@RestController
public class HelloController {

    @ApiOperation(value="测试API",notes = "API工具")
    @GetMapping("/hello")
    public String index(@RequestBody User user){

        return "hello";

    }
}

上面的接口有一个User 对象,User对象的参数也可以用Swagger来注释:

@Getter
@Setter
@Builder
@ApiModel(description = "请求参数实体")
public class User implements Serializable {

    @ApiModelProperty(value = "用户名称",required = true)
    private String name;

    @ApiModelProperty(value = "用户性别" ,required = true)
    private String sex;

    @ApiModelProperty(value = "用户年龄",required = true)
    private int age;
}

@Getter 和@Setter 、 @Builder 注解  是实现了类中参数的 get set 方法,  Builder 是  实现了构建器的方式来 访问和实例化是对象,只需要引入以下依赖:

<dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.20</version>
        </dependency>

 接下来启动项目,访问localhost:8080/swagger-ui.html; 

Swagger中注解说明:

@Api():作用于类上,表示这个类是swagger的资源。

    tags = ”说明该类的作用“

@ApiOperation():用在请求的方法上,说明的方法的用户和作用

    value=“说明方法的用途、作用”

    notes="方法的备注说明“

@ApiImplicitParams():用在请求的方法上,表示一组参数说明,可以包含多个@ApiImplicitParam()

@ApiImplicitParam():指定一个请求参数的各个方面

       name:参数名

       value:参数的汉字说明

       required:参数是否必须传

       dataType:参数类型

       defaultValue:参数的默认值

@ApiResponses():用在请求的方法上,表示一组响应。可以包含多个@ApiResponse()

@ApiResponse():用于表示一个错误的响应信息

    code:数字

    message:信息

    response:抛出异常的类      

@ApiModel():用在响应类上,表示一个返回响应数据的信息。

@ApiModelProperty():用在属性上,描述响应类的属性

 

 

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值