「Spring Data」の目的を理解しようとしているときに、この記事に出くわし、Gemfire/Redis リポジトリとそれに対応する Spring-Data コンポーネントを使用していくつかの例を試しました。誰かが次の質問を手伝ってくれませんか。
シナリオ: GemFire が私のデータストアだったとき、CRUD 操作を実行するために、GemFireTemplate でメソッドcreate、get、removeを使用する必要がありました。Redis が私のデータストアだったとき、RedisTemplate でメソッド.opsForHash().put 、 .opsForHash().get 、および .opsForHash().deleteを使用して、同じ CRUD 操作を実行する必要がありました。
質問:
Spring-Data は、基礎となるデータ ストアに一定レベルの抽象化を提供することになっていませんか? それぞれの CRUD メソッドを知っていて、基礎となるデータ ストアに基づいて異なる API を持っていることが期待される場合、Spring-Data コンポーネントはどのような抽象化をもたらしますか? Gemfire 用の Jedis または Java クライアントを直接使用して、これらのデータストア固有の CRUD 操作を実行することはできませんか?
このリンクはそれを説明しているようですが、それを理解するには助けが必要なようです。
すべての永続ストアに対する一般的な API はありません。違いはあまりにも根本的です。ただし、Spring Data プロジェクトは、データにアクセスするための共通のプログラミング モデルを提供します。