私は Java EE テクノロジーの初心者です。jstl-api
jar と jarの違いは何だろうかjstl-impl
。
API と実装が分離されているのはなぜですか? 利用可能な他の実装があるということですか?
Java EE は標準化された仕様で動作するため、API と実装は分離されています。
API はその仕様の一部であり、その仕様の作成に参加したすべての人が同意したインターフェースのセットがほとんど含まれています。理論的には、誰もが公開された標準化された API を実装し、関連する仕様書で説明されているように動作する実装を作成できます。実装がいわゆる TCK (Technical Compliance Kit) に合格すると、その実装を「認定済み」と呼ぶことができます。
競争を促進すると同時に、ユーザーを特定の実装にロックインすることが、この仕様システムの明確な目標です。
特に JSTL は、 JSR 245の下で開発された JSP 仕様の一部です。独自の実装を作成する場合は、仕様書を読むことから始めます。
jstl 用の独自の impl を作成する方法を説明しているチュートリアルを教えてください。
私が知る限り、Java EE 仕様の独自の実装を作成するための特定のチュートリアルはありません。ほとんどすべての場合、それは専門家の仕事であり、通常は選ばれた少数の組織または個人によってのみ実行される仕事です. David Blevins (TomEE で有名) は、これにほぼ関連する作業を時折垣間見せてくれますが、この種の資料はチュートリアルのような記事には向いていません。
jstl-api には、実装する必要があるインターフェースが含まれています。jstl-impl には、これらの実装の標準またはデフォルトの実装が含まれています。なぜ両方が必要なのですか?標準またはデフォルトの機能が必要な場合は jstl-impl を使用しますが、独自の動作を実装したい場合は、jstl-api のインターフェイスのメソッドをオーバーライドできます。それが API の意味です。アプリケーション プログラミング インターフェイスです。よろしくお願いします。