2

一般的な要件は、RESTを介してJPAデータソースにアクセスすることです。反対のこと、つまりHTTPリクエストをRESTful永続性サービスに送信することで機能するJPAプロバイダーが必要です。これの利点は、JPA APIに対して作成されたアプリケーションは、コードを変更することなく、従来のJPAプロバイダー(Hibernateなど)とRESTベースのJPAプロバイダーを簡単に切り替えることができることです。

だから私の質問は、既存のRESTベースのJPAプロバイダーがあるかどうかです。そうでない場合、そのようなことは実現可能でさえありますか?

4

3 に答える 3

1

まず第一に、JPA は実際にはリレーショナル データベース用に設計されています...

第 2 に、RESTful 持続性には標準がないため、JPA-REST プロバイダーはその REST 持続性アプリケーションに固有のものになります。

EclipseLink-EISを使用して何かを実装できます。JCA_RestAdapter 実装を作成するだけです。

「RESTful 永続化サービス」と言うときに NoSQL データベースの 1 つを意味する場合は、そうかもしれません。これらの NoSQL DB の一部は REST ベースのインターフェースを提供し、一部の JPA プロバイダーは NoSQL DB のサポートを開始しています。http://wiki.eclipse.org/EclipseLink/FAQ/NoSQLを参照してください。

正直なところ、DAO パターンを実装して CRUD(L) 操作を抽象化した方がよいでしょう。これはまさにDAOの目的です。

于 2012-05-25T04:31:52.583 に答える
1

Datanucleaus には、RESTful json API を介した JPA 実装があります。ただし、REST API は規則に従う必要があります: http://www.datanucleus.org/products/accessplatform_3_0/json/support.html

彼らの S3 と GoogleStorage は json API を拡張します。

編集:元の回答に間違った製品へのリンクを入れてください。

于 2014-01-31T22:59:28.350 に答える
0

そこにいくつかの選択肢があります。たとえば、「JEST」を見てください。

https://www.ibm.com/developerworks/mydeveloperworks/blogs/pinaki/entry/rest_and_jpa_working_together71?lang=en

RESTはAPI(アプリケーションプログラミングインターフェイス)ではありません。これは、サービスの機能にアクセスするためのAPIを持たないことを規定するアーキテクチャスタイルです。

..。

ステートレススペクトルの反対側には、JEEアプリケーションサーバーの原則があります。サーバーはすべての状態を維持し、すべてに1つ(または複数)のAPIが存在します。このようなサーバー中心のステートフルなAPI指向のJEEの原則は、いくつかの障害につながりました。

..。

RESTの原則は簡潔でエレガントだと思いました。また、Java Persistence API(JPA)プロバイダーは、従来のオブジェクトとリレーショナルのインピーダンスの不一致を標準化および合理化する上で素晴らしい仕事をしてきました。JPAは、JDBCの単なる置き換えと誤解されることがよくありますが、JDBCをはるかに超えており、オブジェクトリレーショナルマッピング(ORM)をはるかに超えています。JPAは、リレーショナルデータをオブジェクトグラフとして表示および更新するための堅牢な方法です。また、デタッチされたトランザクション、カスタマイズ可能なクロージャー、永続的なIDなどのコアJPAの概念は、RESTの原則とうまく一致しているようです。

その他のリンク:

于 2012-05-24T00:33:33.213 に答える