はじめに
この記事は、Spring BootのWebアプリケーションの基本①からSpring BootのWebアプリケーションの応用④まで作成をした業務用アプリケーションのシステムの詳細を説明をした記事です。Spring Bootを使ったWebアプリケーションの内容
1. Spring BootのWebアプリケーションの基本① ~IntelliJの使い方とMVCモデルの概要~2. Spring BootのWebアプリケーションの基本② 〜MVCモデルとEntityとlombok~
3. Spring BootのWebアプリケーションの基本③~3層アーキテクチャと依存性の注入~
4. Spring BootのWebアプリケーションの基本④ ~データ・アクセス層とMyBatisとH2コンソール〜
5.Spring BootのWebアプリケーションの応用① ~Spring Bootで注文フォームを作成する手順~
6.Spring BootのWebアプリケーションの応用② ~注文フォームでトランザクションと二重サブミット対策とバリデーション〜
7.Spring BootのWebアプリケーションの応用③〜注文フォームの更新と削除~
8.Spring BootのWebアプリケーションの応用④〜Bootstrap~
成果物
GitHubシステム概要
このアプリケーションは、業が顧客からの注文情報を受け取り、記録、管理、更新、削除し、注文情報を管理することを目的としています。注文情報は、注文番号、納入日付、会社情報、品物情報、数量、単価、金額などのデータで構成されています。
このシステムは、アプリケーションは、データベース内の注文情報を3層アーキテクチャとMVCモデルに基づいて処理し、ユーザーが注文情報を効率的に操作できるようになっています。
システムアーキテクチャ
このアプリケーションは、3層アーキテクチャとMVCモデルを採用して設計されています。以下にそれぞれの要素を説明します。
3層アーキテクチャ
このアプリケーションは、3つの主要な層で構成されています。
プレゼンテーション層: ユーザーインターフェースとのやり取りを担当します。Thymeleafテンプレートを使用して、ユーザーにデータの表示、入力、操作を提供します。これにより、注文の一覧表示、詳細表示、作成、更新、削除が実現されます。
アプリケーション層: コントローラとサービスがこの層で動作します。コントローラは、ユーザーからのリクエストを受け取り、適切な処理を呼び出す役割を果たします。サービスは、ビジネスロジックを処理し、データベースアクセスを行います。サービスは、注文の作成、更新、削除、検索などの機能を提供します。
データアクセス層: データベースとのやり取りを担当します。MyBatisを使用して、データベース内の注文情報を操作するためのリポジトリが実装されています。リポジトリは、データベースへのCRUD(作成、読み取り、更新、削除)操作を提供します。
MVCモデル
MVC(Model-View-Controller)モデルは、アプリケーションの設計アーキテクチャの一部として採用されています。
Model: データの保持と処理を担当します。OrderEntity や OrderForm クラスがデータモデルとして使用され、データベースからの情報の取得や更新、フォームデータのバインディングが行われます。
View: ユーザーインターフェースの表示を担当します。Thymeleafテンプレートが使用されており、ユーザーにデータの表示や操作を提供します。
Controller: ユーザーからのリクエストを受け取り、適切な処理を呼び出す役割を果たします。OrderController クラスがこの役割を担当し、各種アクションの処理を制御します。
データベース
ORDERSテーブル
顧客からの注文情報を効果的に管理するために使用するテーブルカラム名 | データ型 | NULL許容 | デフォルト値 | 主キー | 説明 |
---|---|---|---|---|---|
order_id | INT | NOT NULL | ✔ | 注文番号 | |
order_date | DATE | NOT NULL | SYSDATE | 納入日付 | |
company_no | INT | 0 | 会社番号 | ||
company_name | VARCHAR(255) | 会社名 | |||
item_no | INT | 0 | 品物番号 | ||
item | VARCHAR(255) | 品物 | |||
quantity | INT | 0 | 数量 | ||
unit_price | INT | 0 | 単価 | ||
price | INT | 0 | 金額 |
画面詳細
トップページ
説明
アプリケーションのトップページです。
「業務管理アプリケーション」という見出しと、注文リスト一覧へのリンクが表示されます。
注文リスト一覧ページ
説明
注文の一覧を表示するページです。
テーブル形式で各注文の詳細が表示され、注文番号をクリックすると注文詳細ページに遷移します。また、「業務管理アプリケーション」のタイトルをクリックすると「トップページ」に遷移します。
トップページのボタンをクリックすると、「トップページ」に遷移し、作成ボタンをクリックすると、「注文リストフォームページ」に遷移します。
注文リストフォームページ
説明
新しい注文を作成するためのフォームページです。
各フィールドに入力し、「作成」ボタンをクリックすると新しい注文が作成されます。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。
注文詳細フォームページ
説明
注文の詳細を表示・編集するためのフォームページです。
各フィールドに表示される情報は注文の詳細です。必要に応じてフィールドを編集し、「更新」ボタンをクリックすると注文が更新されます。「削除」ボタンをクリックすると「注文削除確認ページ」に遷移します。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。
注文削除確認ページ
説明
注文を削除する際に確認するためのページです。
注文の詳細が表示され、「削除」ボタンをクリックすると注文が削除されます。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。