Java SE / EE / ME之间的区别?

时间:2010-05-18 12:53:13

标签: java java-ee java-me

当我想开始学习Java时,我应该安装哪一个?我将从一些基础开始,所以我将编写简单的程序来创建文件,目录,编辑XML文件等等,现在没有什么太复杂了。

我想我应该在Windows 7桌面上安装Java SE(标准版)。我已经有了Komodo IDE来编写Java代码。

14 个答案:

答案 0 :(得分:512)

Java SE = 标准版。这是核心Java编程平台。它包含任何Java程序员应该学习的所有库和API(java.lang,java.io,java.math,java.net,java.util等...)。

Java EE = 企业版。来自维基百科:

  

Java平台(企业版)与Java标准不同   版本平台(Java SE),它添加了提供的库   部署容错,分布式,多层Java的功能   软件,主要基于在其上运行的模块化组件   应用服务器。

换句话说,如果您的应用程序需要一个非常大规模的分布式系统,那么您应该考虑使用Java EE。它构建于Java SE之上,提供用于数据库访问(JDBC,JPA),远程方法调用(RMI),消息传递(JMS),Web服务,XML处理的库,以及为Enterprise JavaBeans定义标​​准API,servlet ,portlet,Java Server Pages等......

Java ME = Micro Edition 。这是开发移动设备和机顶盒等嵌入式系统应用程序的平台。 Java ME提供了Java SE功能的子集,但也介绍了特定于移动设备的库。由于Java ME基于早期版本的Java SE,因此Java 1.5中引入的一些新语言功能(例如泛型)不可用。

如果您是Java新手,一定要从Java SE开始。

答案 1 :(得分:58)

以下是API的一些差异

Java SE包含以下API以及更多

  • applet
  • awt
  • rmi
  • jdbc
  • 摆动
  • 集合
  • xml绑定
  • JavaFX(合并到Java SE 8)
  • Java 8 Collections Streaming API
  • Java 9 Reactive Streams API
  • Java 9 HTTP / 2 API

Java EE包括以下API以及更多

  • 的servlet
  • 的WebSocket
  • java faces
  • 依赖注入
  • EJB
  • 持久性
  • 交易
  • JMS
  • batch api

Java ME包括以下API以及更多

  • 无线信息
  • Java ME Web Services
  • 安全和信任服务API
  • 位置
  • 移动XML API

希望这有帮助。

答案 2 :(得分:51)

Java SE是构建Java EE的基础。

Java ME是移动设备SE的子集。

所以你应该为你的项目安装Java SE。

答案 3 :(得分:34)

根据Oracle的documentation,实际上有四个Java平台:

  • Java平台,标准版(Java SE)
  • Java平台,企业版(Java EE)
  • Java平台,Micro Edition(Java ME)
  • JavaFX的

Java SE 用于开发桌面应用程序,它是用Java语言开发的基础。它由开发工具,部署技术以及Java应用程序中使用的其他类库和工具包组成。 Java EE 构建于Java SE之上,用于开发Web应用程序和大型企业应用程序。 Java ME 是Java SE的子集。它提供了一个API和一个小型虚拟机,用于在小型设备上运行Java应用程序。 JavaFX 是一个使用轻量级用户界面API创建富Internet应用程序的平台。它是Java平台系列的最新成员。

严格来说,这些平台是规格;它们是规范,而不是软件。 Java平台标准版开发工具包(JDK)是一个官方的实现 Oracle提供的Java SE规范。还有其他实现,如OpenJDK和IBM的J9。

Java新手为其平台和操作系统下载了JDK(Oracle的JDK可供下载 here。)

答案 4 :(得分:17)

当我遇到这个问题时,我发现Oracle's tutorial上提供的信息非常完整,值得分享:

Java编程语言平台

  

Java编程语言有四个平台:

     
      
  • Java平台,标准版(Java SE)

  •   
  • Java平台企业版(Java EE)

  •   
  • Java平台,Micro Edition(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平台提供API和小型虚拟机   用于运行Java编程语言应用程序的机器   设备,如手机。 API是Java SE API的子集,   以及对小型设备应用程序有用的特殊类库   发展。 Java ME应用程序通常是Java EE的客户端   平台服务。

JavaFX的

  

JavaFX是一个使用a创建富Internet应用程序的平台   轻量级用户界面API。 JavaFX应用程序使用   利用硬件加速的图形和媒体引擎   更高性能的客户和现代的外观以及   用于连接网络数据源的高级API。 JavaFX的   应用程序可能是Java EE平台服务的客户端。

答案 5 :(得分:11)

是的,Java SE是从哪里开始的。你提到的所有任务都可以用它来处理。

Java ME是移动版,EE是企业版;这些是标准版的专用/扩展版本。

答案 6 :(得分:10)

  

我想Java SE(标准版)就是我应该安装的版本   Windows 7桌面

是的,当然是。 Java SE是最好的开始。顺便说一句,你必须学习Java基础知识。这意味着您必须学习Java SE中的一些库和API。

Java平台版本之间的区别:

Java Micro Edition (Java ME):

  • 高度优化的运行时环境。
  • 定位消费者产品(Pagers,手机)。
  • Java ME以前称为Java 2平台,Micro Edition或 J2ME。

Java Standard Edition (Java SE):

用于编写,部署和运行applet和应用程序的开发人员的Java工具,运行时和API。 Java SE以前称为Java 2平台,标准版或J2SE。 (每个人/初学者从此开始)

Java Enterprise Edition(Java EE):

定位企业级server-side应用程序。 Java EE以前称为Java 2平台,企业版或J2EE。

Another duplicated question for this question.

最后,关于 J ..混淆

JVM (Java Virtual Machine):

JVM是JDK和JRE的一部分,用于转换Java字节代码并在客户端计算机上将其作为本机代码执行。

JRE (Java Runtime Environment):

这是为java程序提供执行的环境。它包含 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平台标准版(Java SE)允许您在桌面和服务器上开发和部署Java应用程序(与SDK相同)。

J2SE,J2ME,J2EE

1.2到1.5之间的任何Java版本

详细了解这些主题:

答案 7 :(得分:7)

是的,您应该从Java SE开始。 Java EE适用于Web应用程序,Java ME适用于移动应用程序 - 这些都是SE的构建。

答案 8 :(得分:5)

Java SE(标准版)用于构建桌面应用程序。

Java ME(Micro Edition)适用于旧的移动设备。

Java EE(企业版)用于开发基于Web的应用程序。

答案 9 :(得分:2)

如果我是你,我会安装Java SE SDK。安装完成后,请确保已设置JAVA_HOME环境变量,并将%JAVA_HOME%\ bin目录添加到路径中。

答案 10 :(得分:1)

开发人员使用不同版本的Java平台来创建在桌面上运行的Java程序 计算机,网络浏览器,网络服务器,移动信息设备(如功能手机),以及 嵌入式设备(如电视机顶盒)。

  Java平台,标准版(Java SE):用于开发的Java平台 应用程序,它们是在桌面上运行的独立程序。 Java SE是 也用于开发applet,这些程序是在Web浏览器中运行的程序。

Java平台,企业版(Java EE):用于开发的Java平台 面向企业的应用程序和servlet,它们是服务器程序 符合Java EE的Servlet API。 Java EE建立在Java SE之上。

Java平台,微型版(Java ME):用于开发的Java平台 MIDlet,是在移动信息设备上运行的程序,以及Xlets, 这是在嵌入式设备上运行的程序。

答案 11 :(得分:0)

SE(JDK)拥有您在Java上需要的所有库。 我建议使用Netbeans IDE,因为它直接来自Oracle与SE(JDK)捆绑在一起。 不要忘记设置“path”和“classpath”变量,尤其是如果您要尝试命令行。 使用64位系统插入“系统路径”,例如C:\ Program Files(x86)\ Java \ jdk1.7.0变量在C:\ Windows \ system32之前;将系统引导到JDK。

希望这会有所帮助。

答案 12 :(得分:0)

Java SE用于桌面应用程序和简单的核心功能。 Java EE用于桌面,但也用于Web开发,网络和高级内容。

答案 13 :(得分:0)

EE: - 企业版: - 此Java版专为企业应用程序/业务而设计,我们必须处理大量不同的服务器,这些服务器在安全性,事务管理等方面具有重要性。

SE: - 标准版: - 此版本适用于标准应用程序。

ME: - Micro Edition: - 此java版专为手机平台而设计。由于移动设备中的内存资源有限,因此更重视内存管理。

因此,基本上JAVA针对不同的要求有不同的版本。