springboot整合mybatis、swagger、代码生成器、Lombok

本文详细介绍了如何将Swagger与SpringBoot进行整合,包括Swagger的基本概念、整合步骤,以及如何使用Lombok简化代码。同时,还讲解了SpringBoot配置代码生成器的流程,包括导入依赖、配置YML文件、处理异常和测试。

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


前言

提示:这里可以添加本文要记录的大概内容:


一、Swagger简述

1.1 swagger是什么?

1、是一款让你更好的书写API文档规范且完整的框架。

2、提供描述、生产、消费和可视化RESTful Web Service。

3、是由庞大工具集合支撑的形式化规范。这个集合涵盖了从终端用户接口、底层代码库到商业API管理的方方面面。

二、Swagger整合springboot使用步骤

2.1 步骤一:导入jar包(pom.xml文件)

<!--    swagger插件    -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-boot-starter</artifactId>
            <version>3.0.0</version>
        </dependency>

2.2 步骤二: 编写swagger的配置类

package com.tzw.config;

import io.swagger.annotations.ApiOperation;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
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;
/**
 * @author tzw
 * @version 1.0
 */
@Configuration
public class Swagger3Config {
   
   
    @Bean
    public Docket apiConfig(){
   
   
        return new Docket(DocumentationType.OAS_30)
                .apiInfo(apiInfo())
                //设置通过什么方式定位到需要生成文档的接口.
                // 定位了方法上的Api0peration
                .select()
                .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
                .paths(PathSelectors.any())//接口URL路径,any表示全部的路径
                .build();
    }


    public ApiInfo apiInfo(){
   
   
        return new ApiInfoBuilder()
                .title("第一个Springboot项目")
                .description("项目描述信息")
                .contact(new Contact("tzw","https://blog.csdn.net/qq_45821255?spm=1011.2415.3001.5343","[email protected]"))
                .version("1.0")
                .build();
    }
}

2.3 步骤三:在启动类上加@EnableOpenApi注解

package com.tzw;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import springfox.documentation.oas.annotations.EnableOpenApi;

@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
@EnableOpenApi//以后很多配置都需要在启动类上加上Enable...,表示打开。
public class TestApplication {
   
   

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

}

2.4 步骤4:在controller类中加上@Api(tags = {“模块作用说明”})

@Api(tags = {“xxx”})用在类上,表示说明该类的作用。

@RestController
@RequestMapping("/test")
@Api(tags = {
   
   "第一个spring项目测试模块"})//用在类上,表示说明该类的作用。
public class TestController {
   
   

}

2.5 步骤5:在controller类中的方法上加上@ApiOperation(value = “模块结果”)

为了测试,完善一下controller层,同时完善pojo层:
controller:

@RestController
@RequestMapping("/test")
@Api(tags = {
   
   "第一个spring项目测试模块"})//用在类上,表示说明该类的作用。
public class TestController {
   
   

    @GetMapping()
    @ApiOperation(value = "显示测试结果")//用在方法上,说明方法的用途和作用
    public  Object testDemo(){
   
   
        List<TestDay01> list = new ArrayList<>();
        list.add(new TestDay01("张三",18));
        list.add(new TestDay01("张三1",12));
        list.add(new TestDay01("张三2",13));
        return list;
    }
}

指定请求方法:

在这里插入图片描述

代码:

package com.tzw.gene.controller;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tzw.gene.entity.User;
import com.tzw.gene.service.IUserService;
import com.tzw.gene.util.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Delete
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值