プログラミング Java

【SpringBoot入門】#9~ 更新画面の作成

投稿日:2021年1月1日 更新日:

左側のコンテンツ40%

右側のコンテンツ60%

※2021/01/09
 画面遷移等のバックエンド側の内容が抜けていたので追記しました。

概要

検索結果一覧から編集ボタン押下で遷移してくる更新画面です。
遷移時(初期表示時)には、編集ボタンを押下したデータがすでに入力された状態で表示される画面となっています。
  

更新画面

入力項目は登録画面と同じであるため、共通フォームで共通化されています。
登録画面と異なる部分である、titleとactionのリクエスト先は更新画面用の設定になっています。
 

イメージ


 

ソースコード

 

共通フォーム

登録画面で記載したform.htmlをそのまま利用します。
【SpringBootチュートリアル】#5~ 登録画面の作成 > form.html
 

画面遷移(Controller)

書籍情報IDで編集画面にアクセスすると、書籍情報を取得して表示するようにします。

・Serviceに処理を委譲します。
 idを元に取得したformオブジェクトを取得します。

・画面遷移
 取得したformオブジェクトをmodelに格納し、編集画面(edit.html)に遷移させます。
  

書籍情報の取得

Service

・RepositoryからidをキーにしたBookオブジェクトを取得する。
・Bookオブジェクトが存在しない場合、例外をスローする。
・BookオブジェクトはBookFormにマッピングしなおしてReturnする。

BookForm

BookFormはBookを引数にしたコンストラクタで生成できるようにしてあるので、
以下を確認して下さい。
#6~ 登録機能の実装(BookFrom > 実装)

Repository

メソッドを実装します。
SQLはXMLファイルに記述します。

SQL(XML)

idをキーにbookテーブルからレコードを取得します。
取得対象は有効(削除されていない)であることを条件に加えます。

これでイメージのように動作するようになります。

まとめ

・更新画面と登録画面の入力フォームが同じであるため、共通フォーム化している。
・登録画面とは異なる設定部分だけを切り出して、更新画面としている。
・画面遷移時にidをキーにして書籍情報を取得して画面に表示する。
 
今回のフォーム画面のように共通化することを覚えていくと、修正漏れを防いだり、
仕事の効率が上がっていきますので、処理の共通化はどんどん覚えていきましょう!

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

PHPerがJavaを学ぶ5つのメリット

PHPerである私が会社でJavaの研修担当となり、私自身も大学生以来のJavaを勉強しなおして感じたことを書いていきたいと思います。 対象読者 ・PHP初心者 ・なんとなくPHPで動くプログラムを書 …

Java Silver SE11に誰でも合格できる方法

※お断り とても基本的かつ地道な方法です。 なので、魔法や銀の弾丸を求めている方はそっとページを閉じてください。 地道にこつこつと努力できる方のみ読み進めて下さい。 対象 ・Java Silver S …

Javaで数値(int)を部分一致判定する

文字列に変換して判定します。 <方法> ・matchesメソッドで正規表現使う。 ・containsメソッドに判定文字を渡す。 また、メソッドに切り出すと、intを変換する処理を個別に書かなくてよくな …

【Java入門】Predicateの使い方まとめ

概要 Predicateはtestメソッド持つ関数型インターフェースです。 引数を1つ受け取り、booleanを返します。   基本的な使い方 test(T t)には、ジェネリクスに指定する型を引数と …

【Spring】バリデーション時に、入力値を保持する方法

登録画面で「登録」ボタンを押した後、 バリデーションで引っ掛かってエラーになっても 入力内容を画面に保持して置く方法についてです。 テンプレートエンジンは、Tymeleafを使用しています。 方法とし …

記事を探す

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。