Spring Boot JPAでMySQLのデータから特定のカラムだけ取得する

プロジェクト準備

プロジェクトの作成と準備は以下のSpring BootとJPAでMySQLを操作した記事を参考にする。

コード作成・実装

テーブルに対応するJPAのエンティティクラスが以下のBook.javaのようにあったとき、この中から特定のカラムとして例えばbookId, titleだけを取り出したい場合、以下に示すBookIdAndTile.javaのようなinterfaceクラスで中にget<カラム名>で取得したいカラムを指定したクラスを作る。

Book.java

BookIdAndTitle.java

BookIdAndTitle.javaをJPARepositoryのselectで使うには以下のように書く。

BookRepository.java

これでBookRepository.javaのfindBookIdAndTitleByBookIdメソッドが呼ばれた時にbookIdとtitleのみがMySQLからselectされ取得できる。

参考

Spring Data JPA - Reference Documentation

コメント