ホームページ >Java >&#&チュートリアル >Spring Data JPA リポジトリにカスタム メソッドを追加するにはどうすればよいですか?

Spring Data JPA リポジトリにカスタム メソッドを追加するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-07 17:56:16666ブラウズ

How to Add Custom Methods to Your Spring Data JPA Repositories?

カスタム メソッドを使用した Spring Data JPA のカスタマイズ

Spring Data JPA を使用する場合、開発者は多くの場合、基礎となるフレームワークによって提供される組み込みの crud 機能とファインダー機能を利用します。ただし、場合によっては、ファインダーのカスタマイズやまったく新しいメソッドの追加が必要になる場合があります。この記事では、特定の Spring Data JPA リポジトリ インターフェイスの実装でカスタム メソッドを追加する方法について説明します。

リポジトリ インターフェイス

提供された例では、AccountRepository インターフェイスはパラメータ化された型で JpaRepository を拡張します。 Account と Long。Long 型の主キーを持つ Account エンティティを操作することを示します。さらに、findByCustomer というカスタム ファインダー メソッドが @Query アノテーションを使用して定義されており、これによりカスタム JPQL クエリを実行できるようになります。

カスタム メソッドの追加

リポジトリを完全にカスタマイズするには、別の次のようなインターフェイス:

public interface AccountRepositoryCustom {
    public void customMethod();
}

このインターフェイスはカスタム メソッドを宣言しますcustomMethod().

カスタム メソッドの実装

カスタム インターフェイスの実装クラスを指定する必要があります:

public class AccountRepositoryImpl implements AccountRepositoryCustom {

    @Autowired
    private AccountRepository accountRepository;

    public void customMethod() {
        // Implementation goes here
    }
}

この例では、AccountRepository が自動接続されています。 AccountRepositoryImpl クラス。以下の場合に、customMethod() 実装内で任意のリポジトリ メソッドを呼び出すことができます。

カスタム インターフェイスの参照

最後のステップでは、元の AccountRepository インターフェイスでカスタム インターフェイスを参照します。

public interface AccountRepository extends JpaRepository<Account, Long>, AccountRepositoryCustom {}

JpaRepository と AccountRepositoryCustom の両方を拡張することで、AccountRepositoryインターフェイスは、組み込みリポジトリ メソッドと AccountRepositoryCustom で定義されたカスタム メソッドを組み合わせます。インターフェース。

以上がSpring Data JPA リポジトリにカスタム メソッドを追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。