CrudRepository の count() メソッドでレコード件数を数えることが出来ます。テーブルのレコード件数だけ知りたいケースで便利です。
CrudRepository は JpaRepository のスーパーインターフェースです。そのため、JpaRepository を extends して作成する Repository クラスで count() メソッドを使用することが出来ます。戻り値は long型 で返却されます。
サンプル
サンプルコードを示します。
このクラスがデータエンティティです。DBのテーブルとマッピングします。
@Data @Entity public class TestInfo { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id; private Date updateTime; }
JpaRepository を extends するのは TestInfoRepositoryクラス としました。
@Repository public interface TestInfoRepository extends JpaRepository<TestInfo, Integer> { }
TestInfoRepositoryクラス を Autowired して使用します。
@Controller public class SampleController { @Autowired TestRepository testRepository; @GetMapping(value = "/") public void index() { long testInfoList = testRepository.count(); } }
これでレコード件数が取得できました。SQLやカウント処理を書かなくても済むので便利ですね。