1
1

More than 1 year has passed since last update.

Spring Bootを使ったWebアプリケーション⓪~業務用アプリケーションの概要~

Last updated at Posted at 2023-08-22

はじめに

この記事は、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 金額

画面詳細

トップページ

スクリーンショット 2023-08-21 20.55.31.png

説明
アプリケーションのトップページです。
「業務管理アプリケーション」という見出しと、注文リスト一覧へのリンクが表示されます。

注文リスト一覧ページ

スクリーンショット 2023-08-22 8.23.58.png

説明
注文の一覧を表示するページです。
テーブル形式で各注文の詳細が表示され、注文番号をクリックすると注文詳細ページに遷移します。また、「業務管理アプリケーション」のタイトルをクリックすると「トップページ」に遷移します。
トップページのボタンをクリックすると、「トップページ」に遷移し、作成ボタンをクリックすると、「注文リストフォームページ」に遷移します。

注文リストフォームページ

スクリーンショット 2023-08-22 8.30.59.png

説明
新しい注文を作成するためのフォームページです。
各フィールドに入力し、「作成」ボタンをクリックすると新しい注文が作成されます。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。

注文詳細フォームページ

スクリーンショット 2023-08-22 8.36.54.png

説明
注文の詳細を表示・編集するためのフォームページです。
各フィールドに表示される情報は注文の詳細です。必要に応じてフィールドを編集し、「更新」ボタンをクリックすると注文が更新されます。「削除」ボタンをクリックすると「注文削除確認ページ」に遷移します。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。

注文削除確認ページ

スクリーンショット 2023-08-22 18.58.36.png

説明
注文を削除する際に確認するためのページです。
注文の詳細が表示され、「削除」ボタンをクリックすると注文が削除されます。「取消」ボタンをクリックすると、「注文リスト一覧ページ」に遷移します。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1