2009-06-30 28 views

答えて

16

Java EEはエンタープライズ版です。

jsp、サーブレット、Bean、およびその他のサーバープログラミング用のものが含まれています。

Java SEは標準版です。これは普通のJavaです。 GUIのものが含まれています。

17

Java SEは、Javaおよびそのライブラリの標準バージョンを指します。 Java EEは、Webアプリケーションを配備するために使用されるJavaのエンタープライズ版を指します。

+4

なぜですか誰かがこれを投票するだろうか?私は間違った情報を提供しましたか?何人かの人はちょっと変わっています... –

+4

"Webアプリケーション"はあなたが必要とするいくつかの状況の1つに過ぎないので、私はdownvoteしようとしていました(しかし、最後には私はこのコメントを書くことにしました)。サーバー(したがって、SEの代わりにEEを使用します)。 – mastazi

+3

by 'web application'私は 'ウェブサイト'を意味するだけではありませんでした。私は、サーバーアプリケーションをより明確にする必要があります、あなたは正しいです –

3

最大の違いは

12

まず、J2SEおよびJ2EEの名前が変更されているなどのEJBをサポートするアプリケーションサーバなどのエンタープライズサービス(従ってEE)です。彼らは現在Java SEとJava EEです。

基本的に、Java SEは、エンドユーザー用に設計された標準のJavaです。それがデスクトップアプリケーション用に開発するものです。 Java EEはエンタープライズ版であり、SOAやWebアプリケーションなどのサーバープログラミング用に設計されています。

+0

誰もがまだ古い名前を使用しています! –

+6

@ジョン:いいえ!古い名前は悪いです! Sunのマーケティング部門があなたに与えてくれるごみは何でも受け入れていただきます。 – Pesto

+1

SOAは正確​​に何を意味しますか? –

114

Java SE(以前のJ2SE)は、基本的なJava環境です。 Java SEでは、API described hereを使用して、すべての「標準」プログラムをJavaで作成します。 Java SEを使用するには、JVMが必要です。

Java EE(以前のJ2EE)はJavaのエンタープライズ版です。これにより、Webサイト、Java Beans、およびより強力なサーバーアプリケーションを作成できます。 JVMのほかに、Glassfish,JBossなどのアプリケーションサーバーJava EEと互換性があります。

5

Java SEでは、デスクトップアプリケーションを開発した場合のようにプログラムを実行するソフトウェアが必要です。アプリケーションを実行するためには、すべてのマシンが他のマシンとアプリケーションを共有する必要があります。しかし、Java EEでは、すべてのマシンにインストールするためのソフトウェアは必要ありません。 Java EEには転送機能があります。これはほんの一例です。違いはたくさんあります。

+0

それを明確にしてもらえますか? Java EEには、Java SEのようにJVMが必要です。 「フォワード機能」とは何ですか? – Jerry101

54

Java SEは、Java標準版の略で、通常はデスクトップアプリケーションの開発用で、コア/ベースAPIを形成します。

Java EEは、サーバー(Webサイトなど)上で実行されるアプリケーションのJavaエンタープライズエディションの略です。

Java MEは、ゲームなどの携帯電話のようなリソースが制約されたデバイス(小規模デバイス)で動作するアプリケーションのJavaマイクロエディションの略です。

26

http://www.dreamincode.net/forums/topic/99678-j2se-vs-j2ee-what-are-main-differences/

は限り言語が行くように、それはJavaの変化かのようではありません。 Java EEはすべてのSEライブラリにアクセスできます。しかし、EEには、エンタープライズアプリケーションを扱うための一連のライブラリが追加されています。

Java EEは、「プラットフォーム」または開発の一般的な領域のようなものです。

Java SEでは、スタンドアロンJavaプログラムまたはアプレットとして実行するアプリケーションを作成します。JavaEEではまだこれを行うことができますが、Java EEコンテナの内部で実行されるアプリケーションを記述することもできます。コンテナは、アプリケーションをスレッド間でスケーリングする、リソースプールを提供する、管理機能など​​、大量の管理を行うことができます。

Java EEには、サーブレットに基づいたWebフレームワークがあります。 JSP(Java Server Pages)は、JSPからコンテナで実行できるJavaサーブレットにコンパイルするテンプレート言語です。

だから、Java EEのは、多かれ少なかれのJava SE +エンタープライズプラットフォーム技術です。

のJava EEは、Java EE仕様に基づいて構築フレームワークや技術のトンがあるので(それは私が最初にそれを見たときに私が考えたものである)余分なライブラリだけのカップルよりもはるかに多くのです。

しかし、それはまったく平凡な古いJavaにまで沸騰します。

+0

あなたはEEが「エンタープライズエディション」の略であることを知っていますか?それは1つの製品ではなく、一連の製品です。 – pedrofurla

+1

@MohiulこれはJava EEとJava SEの関係について話してくれたことで素晴らしい応答です。前者は基本的に後者のスーパーセットです。 –

+0

私はこれが完全な情報を与えるので、正解とマークされなければならないと思います。 –

11

私が今までに遭遇した最良の説明は、Oracleウェブサイトでご覧になれます。

Java SEのAPIは、Javaプログラミング言語のコア機能を提供します。これは、Javaプログラミング言語の基本タイプとオブジェクトから、ネットワーク、セキュリティ、データベースアクセス、グラフィカルユーザーインターフェイス(GUI)開発、およびXML解析に使用される高級クラスまでをすべて定義します。

のJava EEプラットフォームは、Java SEプラットフォームの上に構築されています。 Java EEプラットフォームは、大規模で多層でスケーラブルで信頼性が高く、安全なネットワークアプリケーションを開発し実行するためのAPIと実行環境を提供します。

あなたは、両方のAPIのを使用するとJavaServer Pagesの重要な概念と例:JSP、JPA、JDBC、依存性注入など

用などの関連技術を習得しなければならない例のSpringフレームワークのために使用してアプリケーションを開発して考えると
+0

ここでの説明は何ですか - ちょうどリンクを与えるのではなく - 古い回答とは異なる答えです – Mark

+0

@マーク私は特にあなたのために答えを更新しましたが、私はまだコンテンツの重複は悪い考えです。 – xyz

+0

このサイトのヘルプを参照してください "外部リソースへのリンクは奨励されていますが、リンクの周りにコンテキストを追加して、仲間のユーザーはそれが何であるか、そしてその理由を知ることができます。ターゲットサイトに到達できないか、完全にオフラインになります。 " – Mark

7

JavaSEとJavaEEの両方が、開発されたソフトウェアを実行するためのコンピューティングプラットフォームです。

最終的にオラクル社が引き継がれた、Sun Microsystemsによって解放三つの主要なコンピューティング・プラットフォームには、があります。コンピューティングプラットフォームはすべてJavaプログラミング言語に基づいています。これらのコンピューティング・プラットフォームは、次のとおりです。

のJava SE、すなわち、Javaの標準版。通常、デスクトップアプリケーションの開発には が使用されます。コア/ベースAPIを形成します。

Java EE、つまりJava Enterprise Edition。これは元々、 Java 2 Platform、Enterprise EditionまたはJ2EEとして知られていました。結局 のJava EE 5 バージョンではJavaプラットフォーム、Enterprise EditionまたはJavaのEEに変更された名前は、このような ウェブサイトなどのサーバ上で実行するアプリケーションのために主に使用されています。

Java ME、つまりJava Micro Edition。これは主に 携帯電話のようなリソース制約のあるデバイス(小規模デバイス)上で動作するアプリケーションで、最も一般的にはゲームである に使用されます。

10

のJava SEすべてベースパッケージが含まれています。いくつかの基本パッケージは、Javaではwritten、一部はC/C++で書かれています。基本パッケージは、コア機能の上に追加のレイヤーがないため、最も高速です。

のJava EEは、仕様のセットで、それぞれの実装はすべて、すでにcontain everything任意のアプリケーションのために必要なことが起こるのJava SEベースパッケージを使用して構築されています。たとえば、Webアプリケーションの場合、Java SE Web ServerJava SE Databaseがあります。

のJava SE 9/10interpreted languageであることから、それが持っている本来のパフォーマンスの問題を改善するために、ネイティブのためのより良いサポートを含むことが期待されます。膨大な数のJava EEの実装を使用すると、プロジェクトの標準化と引き換えに、パフォーマンス、スケーラビリティ、および教育と更新に多くの時間とコストを犠牲にする意欲があります。

関連する問題