web-dev-qa-db-ja.com

Java SEとJava EEの主な違いは何ですか?

Java SEとJava EEの主な違いは何ですか?

137
omg

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

Java EE(以前のJ2EE)は、Javaのエンタープライズ版です。これを使用して、Webサイト、Java Bean、およびより強力なサーバーアプリケーションを作成します。 JVMのほかに、アプリケーションサーバーJava EE互換、たとえば GlassfishJBoss などが必要です。

116
cd1

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

Java EEは、Webサイトなどのサーバーで実行されるアプリケーションのJavaエンタープライズ版を表します。

Java MEは、ゲームなどの携帯電話などのリソースに制約のあるデバイス(小規模デバイス)で実行されるアプリケーションのJava microエディションを表します。

55
Kermia

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になります。

26
Mohiul Alam

Java SEは、標準バージョンのJavaとそのライブラリを指します。 Java EEは、Webアプリケーションの展開に使用されるJavaのエンタープライズ版を指します。

17

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

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

Java SEは標準版です。これは単純な古いJavaです。 GUIのものが含まれています。

16
Tom

まず、J2SEとJ2EEの名前が変更されました。それらは現在Java SEおよびJava EEです。

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

12
Pesto

これまで出会った中で最高の説明は、 Oracle Webサイトで入手できます。

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

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

たとえば、Spring Frameworkを使用してアプリケーションを開発することを検討する場合は、両方のAPIを使用し、JSP、JPA、JDBC、依存性注入などのJavaServer Pagesおよび関連テクノロジーの主要な概念を学ぶ必要があります。

11
xyz

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

Java EEは一連の仕様であり、それぞれの実装はすべてJava SE基本パッケージこれはすでに起こります すべてを含むanyアプリケーションに必要です。たとえば、Webアプリケーションの場合、 Java SE Webサーバー および Java SEデータベース です。

Java SE 9/10は、ネイティブのパフォーマンス問題を改善するために、ネイティブのより良いサポートを含むことが期待されます 解釈された言語 。膨大なJava EE実装を使用することは、プロジェクトの標準化と引き換えに、パフォーマンスとスケーラビリティ、および教育と更新のための多くの時間とお金を犠牲にする意欲を意味します。

10
ThreaT

JavaSEとJavaEEはどちらも、開発したソフトウェアを実行できるコンピューティングプラットフォームです。

Sun Microsystemsがリリースした3つの主要なコンピューティングプラットフォームがあり、最終的にOracle Corporationに引き継がれました。コンピューティングプラットフォームはすべて、Javaプログラミング言語に基づいています。これらのコンピューティングプラットフォームは次のとおりです。

Java SE、つまりJava Standard Edition。通常、デスクトップアプリケーションの開発に使用されます。コア/ベースAPIを形成します。

Java EE、つまりJava Enterprise Edition。これは元々Java 2 Platform、Enterprise EditionまたはJ2EEと呼ばれていました。最終的に名前は、バージョン5でJava Platform、Enterprise EditionまたはJava EEに変更されました。Java EEは、主にWebサイトなどのサーバーで実行されるアプリケーションに使用されます。

Java ME、つまりJava Micro Edition。主にゲームなどの携帯電話などのリソースに制約のあるデバイス(小規模デバイス)で実行されるアプリケーションに主に使用されます。

7
Vikas Garg

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

5
rafi

最大の違いは、EJBなどをサポートするアプリケーションサーバーなどのエンタープライズサービス(つまりee)です。

3
Otávio Décio