Spring Bootで始めるWebアプリケーション開発入門(実践編) 掲載ソースリスト(2022/02/01)

問い合わせ先:kktworks@gmail.com

Twitter:Follow @kktworks1

■2022/2/1 補足:
「21.3 表示データの限定」
本節でtodoテーブルにowner_idを追加しましたが、この情報はid(todo.id)と同様に

という処理を行う必要があります。
そのため、以下のコードを追加してください。
→追加しないとToDoを更新した際にowner_idがnullになるため、それ以降表示されなくなってしまいます。

◇com.example.todolist.form.TodoData(Todolist15\src\main\java\com\example\todolist\form\TodoData.java)
:
public class TodoData {
    private Integer id;
    private Integer ownerId; // !!!この行を追加!!!
    
    @NotBlank
    private String title;
:
    public Todo toEntity() {
        Todo todo = new Todo();
        // ToDo
        todo.setId(id);
        todo.setOwnerId(ownerId); // !!!この行を追加!!!
        todo.setTitle(title);
:
        return todo;
    }
    public TodoData(Todo todo, List attachedFiles) {
        // Todo部分
        this.id = todo.getId();
        this.ownerId = todo.getOwnerId(); // !!!この行を追加!!!
        this.title = todo.getTitle();
:
    }
:
}


◇todoForm.html(Todolist15\src\main\resources\templates\todoForm.html)
:
■ToDo
<!-- ToDO入力エリア -->
<table>
  <!-- id -->
  <tr>
    <th>id</th>
    <td>
      <span th:text="*{id}"></span>
      <!-- 更新 のために必要 -->
      <input type="hidden" th:field="*{id}">
      <input type="hidden" th:field="*{ownerId}"><!--  !!!この行を追加!!! -->
    </td>
:

◇OperationMessages_en.properties(Todolist15\src\main\resources\i18n\OperationMessages_en.properties)

#最後に以下の1行を追加 msg.e.operation_error=Not the operator's todo

◇OperationMessages_ja.properties(Todolist15\src\main\resources\i18n\OperationMessages_ja.properties)

#最後に以下の1行を追加 msg.e.operation_error=操作者のTodoではありません。
→この行はプログラムの異常終了を避けるために追加しています。実際にこれらのメッセージが表示されるわけではありません。

■2022/1/25 訂正:
「はじめに」>「本書開始の準備」で手順が1つ抜けていました。実行には差し支えありませんが、ソースプログラムの実体がどこにあるのかわかりにくくなるので、以下のようにすることをお勧めします。

①上記サポートサイトからソースコードをダウンロードし、任意のフォルダへ解凍する。
→ c:¥temp へ解凍したとします
② STS を起動する。
③「ワークスペースとしてのディレクトリー選択」が表示される。
前書では workspace を使いましたが、本書でも多くのプロジェクトを作成するので別にした方が良いでしょう。
→本書では workspace2 を作成して使用します。
>----- ↓追加 ----
ここで作成した workspace2 フォルダは、STSの直下に作成されます( C:¥sts-4.*.*.RELEASE\workspace2)

③-2
①で解凍したTodolist7xを③で作成したworkspace2フォルダへコピーする。

----- ↑追加 ----

④ STS の画面が表示されたら、メニュー [ファイル(F)] > [インポート(I)...]を選択する。
⑤「インポート」ダイアログで [Maven]の[>]をクリック > [既存 Maven プロジェクト] > [次へ(N)]をクリックする。
⑥「 Maven プロジェクトのインポート」ダイアログで[参照(B)...]をクリックする。
⑦「 Select Root Folder 」ダイアログで、①で解凍した Todolist7x ③-2でコピーしたworkspace2/Todolist7xを選択 > [フォルダーの選択]をクリックする。
⑧ルート・ディレクトリ(R)に Todolist7x が設定されていることを確認して[完了(F)]をクリックする。
⑨パッケージ・エクスプローラーに Todolist7x が表示される。
⑩ Todolist7x を起動し、 http://localhost:8080/todo へアクセスする。

問い合わせ先:kktworks@gmail.com

Twitter:Follow @kktworks1

Topへ戻る