book-application

書籍管理API

概要

書籍とそのカテゴリーに関するCRUD機能をもった REST API です。

主な使用技術

アプリケーション概略図

book-application drawio (3)

機能

書籍情報に対して以下の処理を実行できます。(カテゴリーに対してはこれから実装予定)

API仕様書参照

設計書

E-R図

book-application drawio (1)

データベース定義

books

カラム名(論理名) カラム名(物理名) 型(桁) Nullable その他
ID book_id int NO PRIMARY KEY
AUTO INCREMENT
書籍名 name VARCHAR(1000) NO  
発売日 release_date DATE NO yyyy-MM-dd 形式
購入状況 is_purchased TINYINT(1) NO DEFAULT 0
カテゴリーID category_id int NO FOREIGN KEY
DELETE NO ACTION
UPDATE CASCADE

categories

カラム名(論理名) カラム名(物理名) 型(桁) Nullable その他
ID category_id int NO PRIMARY KEY
カテゴリー category VARCHAR(20) NO  

API仕様書

swaggerによるAPI仕様書

ローカルでのアプリケーション起動方法

  1. git、Java、Dockerをインストールする(OSによってインストール方法が異なります)
  2. ターミナルを開く
  3. 下記コマンドでこのリポジトリをgit clone(コピー)する
    git clone https://github.com/kawara777/book-application.git
    
  4. クローンしたディレクトリに移動する
  5. 下記コマンドでdockerを起動
    docker compose up
    

    もしくは

    docker compose up -d
    
  6. 下記コマンドでSpring Bootを起動
    ./gradlew bootRun
    
  7. ブラウザやcurlなどでリクエストを送る(API仕様書参考)

自動テスト

以下のテストコードを実施

スクリーンショット 2024-04-21 17 49 28

今度の展望