BaseRepositoryはCrudRepository
に拡張され、@NoRepositoryBean
とタグ付けされています。他のすべてのリポジトリは、BaseRepositoryまで拡張されています。オーバーライドスプリングデータ保存方法
私のBaseRepositoryにsave
メソッドをオーバーライドしてカスタムエラーメッセージを表示するにはどうすればよいですか?たとえば、フロントエンド側で適切なメッセージを表示するには、すべてDataIntegrityViolationException
をキャッチする必要があります。どんな助けもありがたい。例えば
UPDATE
あなたは春のエンドポイント(@Endpoint
)を作成した場合、その後、あなたはすべてのトラフィックを監視することができorg.springframework.ws.server.EndpointInterceptor
を実装するクラスを作成することができます。私はすべてのデータ関連のトラフィックを監視することができる同様のクラスはありますか?
なぜあなたはそのために 'save'メソッドをオーバーライドする必要がありますか?あなたはあなたのサービスでそれを行うことができますか、単にあなたのためにそれを行うための側面を使用します。 –
JPAを使用しているときにsaveメソッドを上書きすることは実際には不可能です。トランザクションが呼び出されると例外がスローされる(EMをフラッシュする) –
サービスでそれを上書きすると、私が持っているすべてのリポジトリ用のサービスを作成する必要があります。たぶん私は、保存メソッドをオーバーライドする必要はないが、リポジトリに関連するすべてのトラフィックが通過する他のクラスもあります。 – JamesLinux