Closed ghost closed 6 years ago
Spring Boot 2.0を使っていませんか? 書籍は1系で書かれています。2では非互換な変更が含まれているので一部そのままでは動きません
ご回答ありがとうございます。 確認したところ、おっしゃる通り、2.0.2.RELEASEとなっておりました。 SPRING INITIALIZRでSpring Bootのバージョンを特に気にせずに Projectを作っていたことに因るものだったのだと思います。 重ねてお礼申し上げます。
2.0.0リリースよりかなり前ですが、2系で試したブランチがあるので、参考になれば。 https://github.com/making/hajiboot-samples/tree/2.0.x/chapter03/3.2.1_hajiboot-rest
(STSは3.9.4RELEASEです。) CustomerServiceクラスのfineOneメソッドと、deleteメソッドでそれぞれ以下のメソッド呼びだしていますが、エラーとなってしまいます。(GitHubのCustomerRepository.java、CustomerService.javaのコードをそのまま使用した結果になります。)
customerRepository.findOne(id) →型 QueryByExampleExecutor のメソッド findOne(Example<"S">) は
引数 (Integer) に適用できません
※エスの前後は、本来はダブルクォーテーションは付きません。取り消し線が出て来てしまうのを
回避するために囲っています。
customerRepository.delete(id) →型 CrudRepository<Customer,Integer> のメソッド delete(Customer) は 引数 (Integer) に適用できません
ここはSpring Data JPAで定義されているCRUDメソッド部分なのだと思うのですが、 Spring Data JPA側のCRUDメソッドの定義が変わったのでしょうか? 分かる範囲で構いませんのでご回答頂けると助かります。