J2EE(Java2 Enterprise Edition)とは、主にJavaでWebアプリケーションを作る為の仕様。事実上、Javaでの標準。きっと本当はWebの為だけの機能ではないだろうが。
Java5.0になって「Java2」から「2」が取れた為、「Java EE」
(略はJEE)と改名したらしい。
|
JavaEEのJavadocへのリンク |
---|---|
JavaEEには以下のような技術・仕様・APIが含まれる。知らないものが多い…。
2010-01-14 | サーブレット | Java Servlet | Webのサーバー側の処理を行うクラス。 |
2009-12-05 | JSP | JavaServer Pages | HTMLを生成する為の、HTMLに似たファイル。 |
2008-08-15 | WAR | Web Application Archive | ウェブ用のアーカイブファイル。 |
2009-12-18 | RMI | Remote Method Invocation | リモートオブジェクトのメソッド呼び出し。 |
2008-09-27 | EJB(EJB3.0) | Enterprise JavaBeans | |
2008-09-12 | EAR | Enterprise Archive | WARとEJBをまとめたアーカイブファイル。 |
2008-08-15 | JNDI | Java Naming and Directory Interface | キーに対する情報を取得する方法。 |
JTA | Java Transaction API | ||
2008-10-04 | JMS | Java Message Service | 非同期で実行する。(スレッドのようなもの) |
JavaMail | |||
JAXP | Java API for XML Processing | XMLを扱う為のクラス。 |
JavaのダウンロードページからJavaEEのAPIがダウンロードできる。
インストールするとsdk/lib/javaee.jar等のjarファイルが出来ているので、これをCLASSPATHに加えればjavaxで始まるパッケージのクラス群が使えるようになる。
例えばjavaee.jarにあるHttpServletクラスを使ってサーブレットのプログラムをコンパイルすることが出来る。
が、このプログラムを実行させるには実装されたJ2EEサーバーが必要。
実際には、実装されたJ2EEサーバーが“固有のAPI(J2EEのAPIを含んだもの)”を提供している事が多い為、その場合はJ2EEのAPIをインストールしなくてもよい。
例えばTomcat5.5ではcommon/lib/servlet-api.jar、WebLogic10.0ならWL_HOME/server/lib/api.jarに入っている。[/2008-08-14]
J2EE自体は仕様なので、それ単体では動かせない。
J2EEのAPIというものが提供されているが、例えばサーブレットを動かすにはサーブレットコンテナが必要であり、誰か(自分で作っても勿論いいけど)が作った(実装した)ものを使う。
J2EEを実装してJ2EEの仕様を満たしたWebサーバーは、J2EEサーバーと呼ばれる。
(一般にはAPサーバーと呼ばれている気がする)
例えば以下のようなWeb/APサーバーがJ2EEの実装(サーブレットコンテナやJSPコンテナの機能を提供している)であり、J2EEサーバーの範疇に含まれる。
(厳密には、J2EEサーバーと名乗るには 試験にパスしてライセンスを受けないといけないらしい)