Spring Boot DB連携

Spring BootのWEB画面上でnull許可項目のDB更新機能を追加してみた(完成イメージと前提条件)

これまで本ブログで、Spring BootのWEB画面で、MyBatisによるDB更新機能を何度か取り上げてきたが、DB更新はNull更新できないパターンのみを扱っていた。

今回は、DB更新項目がNULL更新できるパターンのサンプルプログラムを作成してみたので、共有する。なお、今回のサンプルプログラムは長くなるため、前提条件と完成したサンプルプログラムの画面イメージのみ記載し、ソースコードの内容は次回の記事で記載する。

DB項目をnull値で更新をしようとする場合、jdbcTypeを指定しないと実行時エラーになってしまう場合があるので、jdbcTypeの指定が必要になる。その内容は下記サイトを参照のこと。
https://www.nakamuri.info/mw/index.php/NULL_を確実に設定できるようにするには

また、指定できるjdbcTypeについては、以下のサイトを参照のこと。
https://docs.oracle.com/javase/jp/8/docs/api/java/sql/JDBCType.html

前提条件

下記記事の実装が完了していること。

Spring BootのWEB画面上でデータ検索機能を追加してみた(完成イメージと前提条件)今回は、Spring BootのWEB画面上でデータ検索機能を追加してみたので、そのサンプルプログラムを共有する。 検索機能を行う...

また、USER_DATAテーブルに、「alter table USER_DATA add (MEMO VARCHAR(1024));」を実行することで、以下のように、カラム「MEMO」がNOT NULL制約無しで追加されていること。
USER_DATAテーブル構成

完成した画面イメージの共有

1) Spring Bootアプリケーションを起動し、「http:// (ホスト名):(ポート番号)」とアクセスした場合の初期表示は以下の通りなので、そのまま「検索」ボタンを押下
サンプルプログラムの実行結果1

2) 一覧画面に遷移するため、「データ追加」ボタンを押下
サンプルプログラムの実行結果2

3) 以下のように、「メモ」欄を追加した入力画面に遷移するため、入力項目を指定し「確認」ボタンを押下
サンプルプログラムの実行結果3

4) 以下のように、「メモ」欄を追加した確認画面に遷移するため、「送信」ボタンを押下
サンプルプログラムの実行結果4

5) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
サンプルプログラムの実行結果5

6) 検索画面に遷移するため、「検索」ボタンを押下
サンプルプログラムの実行結果6

7) 一覧画面に遷移し、先ほど追加した「テスト プリン3」データが表示されるため、「更新」リンクを押下
サンプルプログラムの実行結果7

8) 入力画面に遷移するため、入力項目を指定し「確認」ボタンを押下
サンプルプログラムの実行結果8

9) 確認画面に遷移するため、「送信」ボタンを押下
サンプルプログラムの実行結果9

10) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
サンプルプログラムの実行結果10

11) 検索画面に遷移するため、「検索」ボタンを押下
サンプルプログラムの実行結果11

12) 一覧画面に遷移し、先ほど更新した「テスト プリン3」データが表示されるため、「削除」リンクを押下
サンプルプログラムの実行結果12

13) 削除確認画面に遷移するため、「送信」ボタンを押下
サンプルプログラムの実行結果13

14) 一覧画面に遷移し、「テスト プリン3」データが削除されたことが確認できる。ここで「データ追加」ボタンを押下
サンプルプログラムの実行結果14

15) 入力画面に遷移するため、メモ欄が空白の状態で「確認」ボタンを押下
サンプルプログラムの実行結果15

16) 以下のように、「メモ」欄が空白状態で確認画面に遷移するため、「送信」ボタンを押下
サンプルプログラムの実行結果16

17) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
サンプルプログラムの実行結果17

18) 検索画面に遷移するため、「検索」ボタンを押下
サンプルプログラムの実行結果18

19) 一覧画面に遷移し、先ほど追加した「テスト プリン3」データが表示されるため、「更新」リンクを押下
サンプルプログラムの実行結果19

20) 以下のように、「メモ」欄が空白状態で入力画面に遷移することが確認できる。ここで「戻る」ボタンを押下
サンプルプログラムの実行結果20

21) 一覧画面に遷移し、「テスト プリン3」データが表示されるため、「削除」リンクを押下
サンプルプログラムの実行結果21

22) 以下のように、「メモ」欄が空白状態で削除確認画面に遷移することが確認できる
サンプルプログラムの実行結果22

また、上記画面遷移を行った後の、「メモ」欄が空白状態の「テスト プリン3」のデータを確認すると、項目「memo」にnull値が設定されていることが確認できる
memo欄がnullのUSER_DATAテーブルの値