溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SpringBoot2 MyBatis集成Swagger文檔

發(fā)布時(shí)間:2024-11-05 15:15:16 來(lái)源:億速云 閱讀:79 作者:小樊 欄目:編程語(yǔ)言

在Spring Boot 2中集成Swagger生成API文檔,你需要遵循以下步驟:

  1. 添加依賴

在你的pom.xml文件中添加Swagger和MyBatis的依賴:

<dependencies>
    <!-- Spring Boot Starter Web -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- MyBatis Starter -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mybatis</artifactId>
    </dependency>

    <!-- Swagger Starter -->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>2.9.2</version>
    </dependency>

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

    <!-- MySQL Connector -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
</dependencies>
  1. 配置Swagger

創(chuàng)建一個(gè)配置類(lèi)SwaggerConfig.java,用于配置Swagger:

import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
                .paths(PathSelectors.any())
                .build();
    }
}

這里,我們使用@EnableSwagger2注解啟用Swagger2,并使用Docket類(lèi)創(chuàng)建一個(gè)API文檔實(shí)例。RequestHandlerSelectors.basePackage("com.example.demo.controller")表示只掃描com.example.demo.controller包下的控制器類(lèi)。

  1. 創(chuàng)建實(shí)體類(lèi)

創(chuàng)建一個(gè)簡(jiǎn)單的實(shí)體類(lèi)User.java,用于測(cè)試API文檔:

public class User {
    private Long id;
    private String name;
    private Integer age;

    // 省略getter和setter方法
}
  1. 創(chuàng)建Mapper接口

創(chuàng)建一個(gè)MyBatis的Mapper接口UserMapper.java,用于操作User實(shí)體類(lèi):

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> findAll();
}
  1. 創(chuàng)建控制器

創(chuàng)建一個(gè)控制器UserController.java,用于處理HTTP請(qǐng)求:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserController {
    @Autowired
    private UserMapper userMapper;

    @GetMapping("/users")
    public List<User> findAll() {
        return userMapper.findAll();
    }
}
  1. 訪問(wèn)Swagger文檔

啟動(dòng)你的Spring Boot應(yīng)用,然后在瀏覽器中訪問(wèn)http://localhost:8080/swagger-ui.html,你將看到Swagger生成的API文檔。

注意:如果你的項(xiàng)目中有多個(gè)包需要掃描,可以將RequestHandlerSelectors.basePackage("com.example.demo.controller")中的com.example.demo.controller替換為你的實(shí)際包名。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI