Help us understand the problem. What is going on with this article?

Spring Boot で実装した REST API に swagger-ui を導入する

概要

  • Spring Boot で REST API を実装している前提
  • API のドキュメントを生成する swagger-ui を導入する
  • gradle に io.springfox:springfox-boot-starter:3.0.0 を追加するだけ

サンプルプロジェクト

  • Spring Initializr で Spring Web を選択してプロジェクト新規作成
  • REST API を実装
    • src\main\java\com\example\demo\api\DemoController.java を以下内容で作成
package com.example.demo.api;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Map;

@RestController
@RequestMapping("/api/demo")
public class DemoController {

    @GetMapping("/customers")
    public String[] customers() {
        return new String[] {
                "あいうえお",
                "かきくけこ",
                "さしすせそ"
        };
    }

    @GetMapping("/customer/{id}")
    public Map<String, String> customer(@PathVariable String id) {
        return Map.of(
                "id", id,
                "name", "名前",
                "address", "東京都");
    }
}

swagger-ui 導入

  • build.gradle に追加
build.gradle
    implementation "io.springfox:springfox-boot-starter:3.0.0"

参考

Yoshihiro-Hirose
元DataSpider開発者。現在はフロントエンドメインでUXを学びつつデータサイエンティストも目指しながら社内にモード2を推進しています。※掲載内容は個人の見解であり、所属する企業を代表するものではありません。
https://twitter.com/yhirose1981
saison_information_systems
モード1(守りのIT)・モード2(攻めのIT)を兼ね備えたバイモーダル・インテグレーターとしてデータ連携プラットフォームのHULFTシリーズ, リンケージサービス, 流通ITサービス, フィナンシャルITサービスを提供します。
https://home.saison.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away