JDK与Java SE/EE/ME的区别
1. Java SE(Java Platform,Standard Edition)。
Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。
Java SE 是做电脑上运行的软件。
2. Java EE(Java Platform,Enterprise Edition)。
这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。
Java EE 是用来做网站的(我们常见的JSP技术)。
3. Java ME(Java Platform,Micro Edition)。
这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
Java ME 是做手机软件的。
参考:http://developer.51cto.com/art/200906/130215.htm
在一台电脑上可以同时安装Java SE、Java EE、Java ME,不影响,对应开发需求不一样,用对应的版本。
JDK与Java SE/EE/ME的区别
jdk是不区分se、ee、me的,所以你在oracle的官网上只要下载java se对应的版本jdk即可:
实际上我们开发web时,就应该选择ee的,而J2EE你只需要两个包 jsp-api.jar 和 servlet-api.jar,而这两个包是没有官方版本的。 也就是Java没有提供这两个包,只提供了一个规范。那么这两个包是谁提供的? 是Web容器,也就是Tomcat、Jetty、JBoss之类的服务器提供的。
参考:
https://www.zhihu.com/question/34409803
http://www.imooc.com/wenda/detail/315780
http://bbs.csdn.net/topics/370177814
有时会有这样的一个说法,选择jdk1.x的版本还是jdk8的版本这样的,jdk1.x的说法是很多年前遗留下来的说法,而现在我们统称的叫法是jdk8这样子。
然后我们会发现安装jdk8时,会在系统盘上创建一个目录,而目录的命名为jdk_1.8xxx这样的,还是上面那句,历史遗留问题。