[戻る]
Java読書会BOF「Spring徹底入門 第2版」を読む会 第16回¶
日時 |
2026年1月31日(土) 10:00-17:00 |
場所 |
てくのかわさき 第2研修室 |
出席者(敬称略) |
高橋(智)、遠藤、高橋(徹)(記) |
本日は、p.668 14.2.6 会議室一覧表示機能の実装から読み始め、読了しました。
Chapter 14 チュートリアル¶
14.2 アプリケーションの開発¶
14.2.6 会議室一覧表示機能の実装¶
Repositoryは、インタフェースのみ定義すれば、実装クラスはSpringが良きに計らってくれる
p.670 リスト RoomsController.java で、listRoomsメソッドはpublicではなく、パッケージスコープとなっている
p.671 リスト listRooms.html で、#temporals とあるが、これは何か
thymeleaf-extras-java8time を依存に追加すると、#temporalsなどが利用可能になる
spring-boot-starter-thymeleaf を依存に追加するとひっぱってくれるので SpringBootでは明示的に記載は不要
同、date.minusDays(1)の結果を文字列にしている(toStringの結果)が、これはどの日付形式か?
LocalDateのtoStringは、yyyy-MM-ddを返す
p.673 図14.20の画面キャプチャでは、前日、翌日の文字とともに "<", ">"の記号が表示されているが、p.671のHTMLファイルにはアングルブラケットの表示がない。
サンプルを実行時、hibernateのDEBUGログで表示するSQLのorder by に ASCがない。JPA実装のバージョンに依存?
メソッド名にDescを指定してDescendingにすると、生成されるSQLに DESCが付く
SQLのorder by はASCが規定なので丁寧に省略している模様
14.2.7 会議室予約機能の実装¶
p.676 ②項 「reservable_roomテーブルから取得し」は、コードが reservation RepositoryからReservationを取得しているので、「reservationテーブル」の誤植
p.677 Reservation.javaのリストでoverlapメソッドの実装において、開始時刻と終了時刻が一致する予約同士は、③の条件で判定できるため②の条件の判定は不要ではないか?
【宿題】ThymeleafのHTMLテンプレートを更新したときに、アプリケーションを再起動せずに変更を反映する方法はあるか?
application.properties に、spring.thymeleaf.cache=falseを書いてみたが反映されない
【誤植】p.687 ThirtyMinutesUnit.javaの実装 3箇所、戻り値とメソッド名の間に空白が欠如している。
Class<?>[]groups()
Class<? extends Payload>[]payload()
ThirtyMinutesUnit[]value()
【宿題】@Lockの意味は
【宿題】Spring JPA メソッド名でfindOneForUpdate のForUpdateを記述する意味は?
14.2.8 ログイン機能の実装¶
14.2.9 実行可能jarの作成¶
【誤植】p.707 上1行目 「target/mrs-0.1.0-SNAPSHOT.jar」→「target/mrs-0.0.1-SNAPSHOT.jar」
次回¶
次回からは、新しい課題図書を読み始めます。
[戻る]