JPAを使用したプロトコルバッファ
-
18-09-2019 - |
質問
私は現在、ピア間のすべての通信にプロトコル バッファーを使用する P2P システムを構築しています。システムには、ピアがサーバーと通信する集中化された部分もいくつかあります。サーバーは JPA を使用して、ピアに関するデータを保存します。
したがって、基本的に、クライアントはプロトコル バッファー メッセージにデータを持ち、サーバーは JPA エンティティにデータを持ちます。したがって、私の質問は、それらの間で自動的に変換する方法があるかどうかです。
私が探しているものは次のとおりです:
- .protos-files からの JPA エンティティのジェネレーター、または
- JPA エンティティからの .protos ファイルのジェネレーター、および
- 実行時にそれらの間で自動的に変換する何らかの方法があるため、新しいクラスごとに手動で変換するコードを作成する必要がありません。
理想的には、さらに一歩進んで、両方を同じクラスにすることができます(つまり、JPA アノテーションを含むプロトコル バッファー)が、それが達成できない場合は、上記でも同様に機能します。
これは既に行われていますか?まだ行われていない場合、妥当な期間内に実装することは可能だと思いますか?
解決
Java プロトコル バッファ API はクラスを生成しようとしています。したがって、それらに注釈を付けるのは難しいように思えます。代わりに、独自の XML 「スキーマ」から始めて、次のような XSLT スタイルシートを作成することもできます。
- .proto ファイルを作成します
- JPAエンティティマッピングXMLファイルを作成します。
その後、Google が生成したファイルを JPA で使用できるようになります。
所属していません StackOverflow