libro
www.tuyano.com
初心者のためのSpring Framework入門

JpaRepositoryを利用する (6/8)

作成:2015-08-08 11:02
更新:2015-08-08 11:11

■リポジトリにメソッドを追加する

データベースのキモとなるのは、なんといっても「検索」です。必要に応じてデータを絞り込み自在に取り出せてこそ、データベースの威力が発揮できます。

それなのに、JpaRepositoryには、検索関係のメソッドは「findAll」しかありません。これでは使えない、なんて思ったかもしれませんね。が、JpaRepositoryの本当の威力は、検索にあるのです。インターフェイスに検索のためのメソッドを追加することで、どんどん必要な検索メソッドを用意できるのです。

実際にやってみましょう。下のリストを参考に、SampleEntityRepositoryインターフェイスを修正して下さい。ここでは、以下の2つの文を追加してあります。
public List<SampleEntity> findByNameLike(String name);
public List<SampleEntity> findByMailEndingWith(String mail);
1つ目の「findByNameLike」は、nameの値を使ってlike検索するためのものです。2つ目の「findByMailendingWith」は、mailの値が、指定したテキストで終わるものを検索します。

単にメソッドの宣言文を書いているだけですが、注意して欲しいのはメソッド名です。これは、勝手に変更したりしないで下さい。必ず、ここにあげた通りの名前でメソッドの宣言を記述して下さい。これらのメソッド名には、意味があります。変更するとうまく機能しません。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

*program list*
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// ********************
// ※SampleEntityRepository.java
// ********************
 
package com.tuyano.libro.db;
 
import java.util.List;
 
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
 
@Repository
public interface SampleEntityRepository
        extends JpaRepository <SampleEntity, Long> {
 
    public List<SampleEntity> findByNameLike(String name);
    public List<SampleEntity> findByMailEndingWith(String mail);
}
※関連コンテンツ

「初心者のためのSpring Framework入門」に戻る