この演習では、Spring Data JDBCを利用して永続化層を作成します。
01-spring5
com.example.persistenceパッケージ
DB初期化に使うschema.sqlとdata.sqlの内容を確認してください(変更不要)。 customerテーブルが顧客データです。
DataSourceConfigクラスは、DataSourceのBeanを定義するJava Configクラスです。
クラスに@Configuration
を付加してJava Configであることを示してください。
dataSource()メソッドは、DataSourceのBeanを定義しています。
@Bean
を付加して戻り値がBeanであることを示してください。
このBeanは組み込みDBのH2を使っており、起動時にschema.sqlとdata.sqlを使ってDB初期化しています。
DataSourceConfigTestクラスを実行してください。 テストがグリーンになれば成功です。レッドになった場合、DataSourceConfigクラスの実装を見直してください。
Customerクラスは、customerテーブルに対応するエンティティクラスです。
主キーとなるid
フィールドには、@Id
アノテーションを付加してください。
CustomerRepositoryインタフェースは、customerテーブルへのCRUD操作を行います。
CrudRepository<Customer, Integer>
インタフェースを継承してください。
JdbcConfigクラスは、Spring Data JDBCに関するBean定義を行うJava Configです。
クラスに@Configuration
を付加してJava Configであることを示してください。
Spring Data JDBCを有効化するとともに、作成したCrudRepository継承インタフェースのパッケージを指定する必要があります。
クラスに@EnableJdbcRepositories(basePackages = "com.example.persistence.repository")
を付加してください。
Spring Data JDBCに関するBean定義のほとんどはJdbcConfiguration
クラスに定義されています。このクラスを継承してください。
Spring Data JDBCが内部で利用するNamedParameterJdbcTemplate
をBean定義しています。このメソッドに@Bean
を付加してください。
JdbcConfigTestクラスを実行してください。 テストがグリーンになれば成功です。レッドになった場合、JdbcConfigクラスの実装を見直してください。
CustomerRepositoryTestクラスのクラス内コメントをすべて外してから、実行してください。 テストがグリーンになれば成功です。レッドになった場合、CustomerRepositoryインタフェースの実装を見直してください。
これで演習1は完成です。 次の演習はtodo-2.mdに書かれています。