javaweb项目插件实现机制
PHP中文网
PHP中文网 2017-04-17 16:49:40
0
3
528
PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(3)
刘奇

Discuz フォーラムのプラグインの一般的な原理は、私が知っていることを参考にしていただけますので、役立つかどうかはご自身で判断してください。

  1. まず、プラグイン関連のファイルが固定のプラグイン ディレクトリに保存されていることを確認することで、プラグインのダウンロード、保存、展開、および前述したその他の問題を解決できます。プラグインのパッケージ形式については、このポスターはゆっくりとできます。研究の場合は、対応するプラグイン ディレクトリ

    に解凍できる限り、zip、jar、または war がすべて受け入れられます。
  2. 個別に実行されるプラグイン、プログラム拡張プラグイン、スクリプトなどのプラグインを分類し、個別に実行するなど、目的を絞った方法でプラグイン メカニズムを実装できます。プラグインは特定の場所にリンクして挿入するだけで済みますが、プログラム拡張プラグインの場合は、プラグイン呼び出し関数またはその他のメカニズムを統合する必要がある場合があります

  3. プラグインをより完璧でスケーラブルにする場合は、プラグインの作成を容易にするために、プラグインにクラスの一部を継承させることもできます

投稿者の質問 1、2、3 に答えてみてください:

  1. プラグインを呼び出すには 2 つの方法があります。 1: いくつかのフック実行プログラムをシステム内のさまざまな場所に事前に配布し、対応する場所で呼び出すことができます。プラグインをインストールした後、アプリケーションの動作モードに関係するため、内部用の場合は複雑なプラグイン呼び出しロジックを実装する必要があります。実際の状況に応じて、プログラムを直接変更してプラグインを呼び出す方が簡単です。

2. プラグインはユーザー情報のみを呼び出すことができます。プラグインを本当に変更したい場合、またはセキュリティを考慮する場合は、プラグインが許可を申請できるようにするプラグイン許可監査機能を開発することを検討できます。開発時にシステムからレビューし、システムが積極的に権限を割り当てるなど、実際の状況と関連していると思われます

3. システム アップグレード時の互換性のないプラグインに対するプロンプトの一部が変更されました。プラグインがアップグレードされると、ダウンロードは直接更新され、プラグイン ディレクトリは上書きされます。
いいねを押す +0
阿神

Java では、プログラムが URLClassLoader を通じてプラグイン拡張機能をサポートできるようになります:
http://xxgblog.com/2013/07/04/java-urlclassloader-plugin/

これは私がずっと前に書いたブログです。プラグイン インターフェイスを定義し、リフレクション経由でプラグイン jar パッケージをロードすることで、実装はあなたが説明した要件に非常に似ています。 。

いいねを押す +0
洪涛

JAVA WEB プラグインの開発では、一般に OSGi テクノロジーが使用されます。この点に関して、JXADF はオープンソースであり、非常に優れた機能を備えています。詳細については、http://osgia.com
を参照してください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!