これまで本ブログで、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
前提条件
下記記事の実装が完了していること。
また、USER_DATAテーブルに、「alter table USER_DATA add (MEMO VARCHAR(1024));」を実行することで、以下のように、カラム「MEMO」がNOT NULL制約無しで追加されていること。
完成した画面イメージの共有
1) Spring Bootアプリケーションを起動し、「http:// (ホスト名):(ポート番号)」とアクセスした場合の初期表示は以下の通りなので、そのまま「検索」ボタンを押下
3) 以下のように、「メモ」欄を追加した入力画面に遷移するため、入力項目を指定し「確認」ボタンを押下
4) 以下のように、「メモ」欄を追加した確認画面に遷移するため、「送信」ボタンを押下
5) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
7) 一覧画面に遷移し、先ほど追加した「テスト プリン3」データが表示されるため、「更新」リンクを押下
8) 入力画面に遷移するため、入力項目を指定し「確認」ボタンを押下
10) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
12) 一覧画面に遷移し、先ほど更新した「テスト プリン3」データが表示されるため、「削除」リンクを押下
14) 一覧画面に遷移し、「テスト プリン3」データが削除されたことが確認できる。ここで「データ追加」ボタンを押下
15) 入力画面に遷移するため、メモ欄が空白の状態で「確認」ボタンを押下
16) 以下のように、「メモ」欄が空白状態で確認画面に遷移するため、「送信」ボタンを押下
17) 完了画面に遷移するため、「検索画面に戻る」ボタンを押下
19) 一覧画面に遷移し、先ほど追加した「テスト プリン3」データが表示されるため、「更新」リンクを押下
20) 以下のように、「メモ」欄が空白状態で入力画面に遷移することが確認できる。ここで「戻る」ボタンを押下
21) 一覧画面に遷移し、「テスト プリン3」データが表示されるため、「削除」リンクを押下
22) 以下のように、「メモ」欄が空白状態で削除確認画面に遷移することが確認できる
また、上記画面遷移を行った後の、「メモ」欄が空白状態の「テスト プリン3」のデータを確認すると、項目「memo」にnull値が設定されていることが確認できる