演習: JdbcClient
この章では、TaskRepository の JDBC を JdbcClient に置き換えます。T- はタスク管理アプリ tasks の問題です。
T-9. TaskRepository の JdbcClient 化
Section titled “T-9. TaskRepository の JdbcClient 化”T-6・T-8 で作った TaskRepository は、接続や例外の処理を JDBC で書いていました。本文 JdbcClient による書き換え と同じく、JdbcClient に置き換えて短くします。次のとおり書き換えます。
DataSourceの代わりにJdbcClientをコンストラクターで受け取るfindAll():SELECT title, completed, notes FROM tasksをquery(Task.class).list()で取得するsave(Task task):INSERT INTO tasks (title, completed, notes) VALUES (:title, :completed, :notes)を名前付きパラメーターで渡し、update()で実行するcountActive():SELECT COUNT(*) FROM tasks WHERE completed = falseをquery(Integer.class).single()で受け取るtry-catchとSQLExceptionは書かない
TaskService・TasksController・tasks.html は変えません。変わるのはデータアクセスの中身です。起動して /tasks を開き、一覧の表示とタスクの追加が T-8 と同じに動けば成功です。