2016-06-29 8 views
2

私はJavaDocとソースコードPersistentPropertyPersistentEntityBasicPersistentEntityなどを読んだことがありますが、これらのオブジェクトが何であるかまだ分かりません。Spring DataのPersistentEntityとは何ですか?

これはデータのオブジェクトですか? またはデータモデルを記述しますか?

データオブジェクトの場合、データはどこですか?たとえば、PersistentPropertyでは、プロパティのnametypeが表示されますが、値は表示されません。

答えて

7

私たちが保持しているタイプについては、これはSpringデータ固有のメタモデルです。それらは、関連が何であるか、識別子プロパティがどのように見えるかなどを表現するための異なる手段を持つバッキングストア(JPA、MongoDBなど)から独立したモデルクラスを検査することを可能にします。

これは、 Spring Data RESTは、エクスポートされたHTTPリソース用にレンダリングされた表現をカスタマイズします。また、独自のストアツーオブジェクトマッピングを実装するストアモジュールは、これらの抽象化を使用してドメインモデルを大幅に検査します。 JPAの場合、実装は基本的にJPA Metamodelインスタンスによってサポートされています。つまり、APIの目的は、必要なメタデータを提供することです。最初からオブジェクトから値を参照する必要はありません。しかし、PersistentEntityは、getPropertyAccessor(…)getIdentifierAccessor(…)の両方を公開しており、エンティティインスタンスのプロパティまたは識別子のルックアップを可能にするオブジェクトを取得するために使用できます(PersistentPropertyAccessorおよびその実装とIdentifierAccessorを参照)。

+1

非常に明確な答え、おかげで多くのオリバー。 –

関連する問題