プロジェクト

全般

プロフィール

Spring Web Application Tutorial

書籍「Spring徹底入門 第2版」の14章 チュートリアルで作成する「会議室予約システム」の内容を実践した技術メモです。

会議室予約システム概要

RDBMSをストレージとするWebアプリケーションです。Spring Frameworkで構成します。
開発には、Spring Boot と Spring MVCを主とし、データベースアクセスにはSpring JPA、画面は Thymeleaf、認証にはSpring Securityを使います。

環境

書籍より新しいバージョンを使います。また、IDEは書籍では Eclipse STSですが、本記事では IntelliJ IDEA Ultimatedを使います。

MacBook

  • OS: macOS 26
  • Java: JDK 25 (Liberica JDK 25)
  • IDE: IntelliJ IDEA Ultimated
  • RDBMS: PostgreSQL 18

PostgreSQL 18の設定

書籍記載にあるデータベース・ユーザーを作成します。

チュートリアル実践

プロジェクト作成

会議室予約システムの開発プロジェクトを作成します。

  • IntelliJ IDEAで[ファイル]メニュー > [新規] > [プロジェクト] で「新規プロジェクト」ウィンドウを開く
  • 左ペインで[Spring Boot]を選択、右ペインで、[名前]にmrsを記入、[言語]にJavaを選択、[型]にGradle-Kotlinを選択、グループはcom.torutk.spring、アーティファクトはmrsを記載、名前とパッケージ名は自動で生成されます。JDKは25を選択、Javaは25、パッケージ化はJarを選択

  • [次へ]をクリックし、使用するSpring Frameworkのコンポーネントにチェックを付ける

使用するコンポーネントは、Spring Data JPA, PostgreSQL Driver, Tymeleaf, Spring Webです。

パッケージディレクトリの作成

会議室予約システムのアプリケーションは次のパッケージ構成を取ります。

  • ドメイン層(domain)
    • モデル(model)
    • リポジトリ(repository)
      • reservation
      • room
      • user
    • サービス(service)
      • reservation
      • room
      • user
  • アプリケーション層(app)
    • ログイン(login)
    • 予約(reservation)
    • 会議室(room)


約15時間前に更新