💚 Backend | 💙 Frontend | 💛 その他 |
---|---|---|
Java | React | Github Actions |
Spring Boot | Tailwind CSS | Swagger |
Spring Security | Vite | JUnit |
MyBatis | React Router | Maven |
MySQL | TypeScript | Docker |
erDiagram
books {
INT id PK "ID"
VARCHAR(50) title "書籍タイトル"
DATE published_at "出版年月日"
ENUM status "available, borrowed"
}
users ||--o{ borrow_records : ""
users {
INT id PK "ID"
VARCHAR(50) name "氏名"
VARCHAR(50) email "メールアドレス"
}
borrow_records }o--|| books : ""
borrow_records {
INT id PK "ID"
INT book_id FK "書籍ID"
INT user_id FK "ユーザーID"
DATE borrowed_date "貸出日"
}
GET /books
... 全ての本のリストを取得GET /books/{id}
... 特定の本の詳細を取得POST /books
... 新しい本を追加DELETE /books/{id}
... 特定の本を削除GET /books/popular
... 人気ランキングGET /books/search?keyword="hoge"
... 本の検索
GET /users
... 全ての利用者のリストを取得GET /users/{id}
... 特定の利用者の詳細を取得POST /users
... 新しい利用者を登録DELETE /users/{id}
... 特定の利用者を削除POST /users/image
... プロフィール写真のアップロードGET /users/me
... 認証済みの自分の情報取得DELETE /users/me
... 認証済みの自分の情報取得
GET /borrow_records
... 全ての貸出記録を取得GET /borrow_records/books
... 全ての貸出記録を本で取得GET /borrow_records/users
... 全ての貸出記録を利用者で取得POST /borrow_records
... 貸出記録を追加(本の貸し出し)PUT /borrow_records/{borrow_record_id}/books/{book_id}
... 貸出記録を更新(本の返却)
POST /register
... 新規登録POST /login
... ログインPOST /logout
... ログアウト








