web-dev-qa-db-ja.com

Java SE/EE/MEの違いは?

Javaの学習を始めたい場合は、どちらをインストールすればよいですか?私はいくつかの基本から始めるつもりです、それで私はファイル、ディレクトリを作成するXMLファイルを編集することなどを作成する簡単なプログラムを書くでしょう。

私は、Java SE(Standard Edition)が私のWindows 7デスクトップにインストールすべきものだと思います。私はすでにKomodo IDEを持っていて、それを使ってJavaコードを書きます。

327
Richard Knop

Java SE = Standard Edition 。これはコアJavaプログラミングプラットフォームです。これには、すべてのJavaプログラマーが学ぶべきライブラリーとAPI(Java.lang、Java.io、Java.math、Java.net、Java.utilなど)がすべて含まれています。

Java EE = Enterprise Edition 。ウィキペディアより

Javaプラットフォーム(Enterprise Edition)は、主にアプリケーションサーバー上で動作するモジュール式コンポーネントに基づいて、フォールトトレラントな分散型多層Javaソフトウェアをデプロイする機能を提供するライブラリを追加するという点でJava Standard Editionプラットフォーム(Java SE)と異なります。 。

つまり、アプリケーションが非常に大規模な分散システムを必要とする場合は、Java EEの使用を検討する必要があります。 Java SE上に構築され、データベースアクセス(JDBC、JPA)、リモートメソッド呼び出し(RMI)、メッセージング( _ jms _ )、Webサービス、XML処理用のライブラリを提供し、Enterprise JavaBeansの標準APIを定義します。 、サーブレット、ポートレット、Java Server Pagesなど.

Java ME = Micro Edition 。これは、モバイル機器やセットトップボックスなどの組み込みシステム用のアプリケーションを開発するためのプラットフォームです。 Java MEは、Java SEの機能のサブセットを提供しますが、モバイルデバイスに固有のライブラリも導入します。 Java MEは以前のバージョンのJava SEに基づいているため、Java 1.5で導入された新しい言語機能のいくつか(たとえば、総称)は利用できません。

Javaに慣れていない場合は、間違いなくJava SEから始めてください。

510
6006604

これはAPIに関していくつかの違いがあります

Java SEインクルードには以下のAPIなどがあります

  • アプレット
  • ああ
  • rmi
  • jDBC
  • スイング
  • コレクション
  • xmlバインディング
  • JavaFX(Java SE 8にマージ)
  • Java 8 CollectionsストリーミングAPI
  • Java 9 Reactive Streams API
  • Java 9 HTTP/2 API

Java EEには以下のAPIなどが含まれます

  • サーブレット
  • ウェブソケット
  • Javaの顔
  • 依存性注入
  • ejb
  • 固執
  • トランザクション
  • jms
  • バッチAPI

Java MEには以下のAPIなどが含まれます

  • ワイヤレスメッセージング
  • Java ME Webサービス
  • セキュリティと信頼サービスAPI
  • ロケーション
  • モバイルXML API

お役に立てれば。

58
tharindu_DG

Java SEは、Java EEの基礎となる基盤です。

Java MEは、モバイルデバイス用のSEのサブセットです。

それで、あなたはあなたのプロジェクトのためにJava SEをインストールするべきです。

51
duffymo

Oracleの ドキュメント によると、実際には4つのJavaプラットフォームがあります。

  • Javaプラットフォーム、スタンダードエディション(Java SE)
  • Javaプラットフォーム、エンタープライズ版(Java EE)
  • Javaプラットフォーム、マイクロ版(Java ME)
  • JavaFX

Java SE はデスクトップアプリケーションを開発するためのもので、Java言語で開発するための基盤です。これは、開発ツール、配備テクノロジ、およびJavaアプリケーションで使用される他のクラスライブラリとツールキットで構成されています。 Java EE はJava SEの上に構築されており、Webアプリケーションおよび大規模エンタープライズアプリケーションの開発に使用されます。 Java ME はJava SEのサブセットです。これは、小型デバイス上でJavaアプリケーションを実行するためのAPIと省スペースの仮想マシンを提供します。 JavaFX は、軽量のユーザーインターフェースAPIを使用してリッチインターネットアプリケーションを作成するためのプラットフォームです。これは最近Javaプラットフォームファミリーに追加されたものです。

厳密に言えば、これらのプラットフォームは仕様です。それらは標準であり、ソフトウェアではありません。 Javaプラットフォーム、Standard Edition開発キット(JDK)は、オラクル社が提供するJava SE仕様の公式の implementation です。 OpenJDKやIBMのJ9など、他の実装もあります。

Javaに慣れていない人は、自分のプラットフォームやオペレーティングシステム用のJDKをダウンロードしてください(OracleのJDKはダウンロード可能です ここ )。

34
Jan Bodnar

私がこの質問に出くわしたとき、私は Oracleのチュートリアル に提供されている情報を見つけました。

Javaプログラミング言語プラットフォーム

Javaプログラミング言語には4つのプラットフォームがあります。

  • Javaプラットフォーム、スタンダードエディション(Java SE)

  • Javaプラットフォーム、エンタープライズ版(Java EE)

  • Javaプラットフォーム、マイクロ版(Java ME)

  • JavaFX

すべてのJavaプラットフォームは、Java仮想マシン(VM)とアプリケーションプログラミングインタフェース(API)で構成されています。 Java仮想マシンは、Javaテクノロジアプリケーションを実行する、特定のハードウェアおよびソフトウェアプラットフォーム用のプログラムです。 APIは、他のソフトウェアコンポーネントまたはアプリケーションを作成するために使用できるソフトウェアコンポーネントの集まりです。各Javaプラットフォームは仮想マシンとAPIを提供します。これにより、そのプラットフォーム用に作成されたアプリケーションは、Javaプログラミング言語のすべての利点を備えた互換性のあるシステム上で実行できます。セキュリティ.

Java SE

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

コアAPIに加えて、Java SEプラットフォームは、仮想マシン、開発ツール、配備テクノロジ、およびJavaテクノロジアプリケーションで一般的に使用される他のクラスライブラリとツールキットで構成されています。

Java EE

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

Java ME

Java MEプラットフォームは、携帯電話などの小型デバイス上でJavaプログラミング言語アプリケーションを実行するためのAPIと省スペースの仮想マシンを提供します。このAPIは、Java SE APIのサブセットであり、小型デバイスアプリケーションの開発に役立つ特別なクラスライブラリもあります。 Java MEアプリケーションは多くの場合、Java EEプラットフォームサービスのクライアントです。

JavaFX

JavaFXは、軽量のユーザーインターフェースAPIを使用してリッチインターネットアプリケーションを作成するためのプラットフォームです。 JavaFXアプリケーションは、ハードウェアアクセラレーションによるグラフィックとメディアエンジンを使用して、高性能クライアントと最新のルックアンドフィール、およびネットワークデータソースへの接続用の高度なAPIを利用します。 JavaFXアプリケーションは、Java EEプラットフォームサービスのクライアントになることがあります。

17
Tarik

Java SE(Standard Edition)はWindows 7デスクトップにインストールする必要があると思います

はい、もちろん。 Java SEは最初から最適なものです。ところで、Javaの基本を学ぶ必要があります。つまり、Java SEのライブラリとAPIのいくつかを学ぶ必要があります。

Java Platform Editionの違い:

Java Micro Edition(Java ME):

  • 高度に最適化されたランタイム環境。
  • ターゲット消費者製品( Pagers 、携帯電話)。
  • Java MEは、以前はJava 2 Platform、Micro EditionまたはJ2MEとして知られていました。

Java Standard Edition(Java SE):

アプレットおよびアプリケーションを作成、デプロイ、および実行する開発者向けのJavaツール、ランタイム、およびAPI。 Java SEは、以前はJava 2 Platform、Standard EditionまたはJ2SEとして知られていました。 (これから始まる全員/初心者)

Java Enterprise Edition(Java EE):

エンタープライズクラス サーバー側 アプリケーションを対象としています。 Java EEは、以前はJava 2 Platform、Enterprise EditionまたはJ2EEと呼ばれていました。

この質問の別の重複した質問。


最後に、約J .. confusion

JVM(Java Virtual Machine):

JVMはJavaバイトコードを変換し、クライアントマシンでネイティブコードとして実行するJDKとJREの一部です。

JRE(Java Runtime Environment):

これは、Javaプログラムが実行されるために提供される環境です。 It 含む JVM、クラスライブラリ、およびその他のサポートファイル。それ含まないコンパイラー、デバッガーなどの開発ツール。

JDK(Java Development Kit):

JDKには、Javaプログラム(javac、Java、javadoc、appletviewer、jdb、javap、rmicなど)およびJREを開発してプログラムを実行するために必要なツールが含まれています。

Java SDK(Java Software Development Kit):

SDKは、JDKと、アプリケーションサーバー、デバッガー、ドキュメントなどの追加ソフトウェアで構成されます。

Java SE:

Javaプラットフォーム、Standard Edition(Java SE)を使用すると、Javaアプリケーションをデスクトップおよびサーバーで開発およびデプロイできます(SDKと同じ)。

J2SE、J2ME、J2EE

1.2から1.5までのJavaエディション

これらのトピックの詳細を読む:

11
Blasanka

はい、Java SEから始めましょう。あなたが言及するすべてのタスクはそれで処理することができます。

Java MEはMobile Edition、EEはEnterprise Editionです。これらはStandard Editionの特殊/拡張バージョンです。

11
Péter Török

はい、Java SEから始めるべきです。 Java EEはWebアプリケーション用、Java MEはモバイルアプリケーション用です。どちらもSEを基にしています。

7
Michael

Java SE(Standard Edition)はデスクトップアプリケーションを構築するためのものです。

Java ME(Micro Edition)は古いモバイル機器用です。

Java EE(Enterprise Edition)はWebベースのアプリケーションを開発するためのものです。

5
Grant Gubatan

私があなたであれば、Java SE SDKをインストールします。インストールしたら、Java_HOME環境変数が設定されていることを確認し、パスに%Java_HOME%\ binディレクトリを追加します。

2
Corv1nus

開発者は、さまざまなエディションのJavaプラットフォームを使用して、デスクトップコンピュータ、Webブラウザ、Webサーバー、携帯情報機器(フィーチャーフォンなど)、および組み込み機器(テレビのセットトップボックスなど)で動作するJavaプログラムを作成します。

[ - 。] Javaプラットフォーム、スタンダードエディション(Java SE): アプリケーションを開発するためのJavaプラットフォーム。デスクトップ上で動作するスタンドアロンプ​​ログラム。 Java SEは、Webブラウザで動作するプログラムであるアプレットの開発にも使用されています。

[ - 。] Java Platform、Enterprise Edition(Java EE): エンタープライズ指向のアプリケーションおよびサーブレットを開発するためのJavaプラットフォーム。これらはJava EEのサーブレットAPIに準拠したサーバープログラムです。 Java EEはJava SEの上に構築されています。

[ - 。] Javaプラットフォーム、マイクロエディション(Java ME): 携帯情報機器で動作するプログラムであるMIDlet、および組み込み機器で動作するプログラムであるXletを開発するためのJavaプラットフォーム。

1
Tapas Pal

SE(JDK)には、Javaを使いこなすために必要なライブラリがすべて揃っています。 Netbeans IDEは、OracleのSE(JDK)にバンドルされているのでお勧めします。特にコマンドラインを試す場合は、 "path"および "classpath"変数を設定することを忘れないでください。 64ビットシステムの場合は、「システムパス」を挿入します。 C:¥Program Files(x86)¥Java¥jdk1.7.0変数、C:¥Windows¥system32より前。システムをJDKに転送します。

お役に立てれば。

0
user3064248

EE: - Enterprise Edition: - このJava版は、セキュリティ、トランザクション管理などを重視して多数の異なるサーバーを扱う必要があるエンタープライズアプリケーション/ビジネス向けに特別に設計されています。

SE: - Standard Edition: - このエディションは標準アプリケーション用です。

ME: - Micro Edition: - このJava版は、特に携帯電話プラットフォーム用に設計されています。携帯電話には限られたメモリリソースしかないため、メモリ管理により重点が置かれています。

そのため、基本的にJavaには、要件ごとに異なるエディションがあります。

0
romil

Java SEはデスクトップアプリケーションと単純なコア機能に使用されます。 Java EEはデスクトップだけでなくWeb開発、ネットワーキング、そして高度なものにも使用されます。

0
sandhu