1

私はほとんどのプロジェクトを C++ と Python で実装しました。しかし、最近、Java のみを使用してデータを取得できる新しいデータベース インターフェイスを入手しました。

Python/C++ ツールを使い続けたいのですが、Java を Python アプリケーションに統合するための適切なソリューションがあるかどうか疑問に思っています。Jython について聞いたことがありますが、これは別の Python 実装であり、一部の C++ ツールが Jython でうまく機能しないのではないかと心配しています。Jpype はシンプルに見えますが、2011 年から更新されていないため、現在の python/java との互換性が少し気になります。

これに対する良い解決策はありますか?すべての意見を歓迎します。

4

3 に答える 3

0

これを行う 1 つの方法は、Web サービスを作成することです。Web サービスは、HTTP 要求を受け入れ、それをデータ要求にマーシャリングし、データを取得する Java クラスにそれを渡し、クエリの結果を何らかの応答にマップして、送り返すことができます。

HTTP 要求を送信し、応答を受け入れ、非整列化できるクライアントは、そのサービスと対話できます。Java で実装されていることを知る必要はありません。

言語の相互運用性を利用するには、追加のネットワーク ラウンドトリップの代償を払います。

于 2013-08-30T17:20:59.673 に答える
0

C/C++ をラップする方法はいくつかありますが、それらについて話すことはできません。

ただし、Java との統合は驚くほど簡単です。実際に JVM 上で動作する Jython と呼ばれる Python のディストリビューションがあります。Java ライブラリの使用は直感的で簡単です。

from java.io.util import *

ほとんどの場合、それは機能します (スレッド化された/非同期のものに関していくつかの警告が適用されます)。私はジトンが大好きです。いくつかのプロジェクトで Jpype を使用しましたが、まだ完全にメンテナンスされていたとしても、この種のプロジェクトではいつでも Jython を選択します。

于 2013-08-30T17:23:48.327 に答える