JDK

Java Development Kit (JDK) 是Sun公司针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。

JDK包含的基本组件包括:

•     javac – 编译器,将源程序转成字节码

•     jar – 打包工具,将相关的类文件打包成一个文件

•     javadoc – 文档生成器,从源码注释中提取文档

•     jdb – debugger,查错工具

JDK中还包括完整的JRE(Java Runtime Environment,Java运行环境),也被称为private runtime。包括了用于产品环境的各种库类,以及给开发员使用的补充库,如国际化的库、IDL库。JDK中还包括各种例子程序,用以展示Java API中的各部分。

 

版本历史(时间表)

•     1995年5月23日,Java语言诞生

•     1996年1月,第一个JDK-JDK1.0诞生

•     1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术

•     1996年9月,约8.3万个网页应用了JAVA技术来制作

•     1997年2月18日,JDK1.1发布

•     1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录

•     1997年9月,JavaDeveloperConnection社区成员超过十万

•     1998年2月,JDK1.1被下载超过2,000,000次

•     1998年12月8日,Java2企业平台J2EE发布

•     1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)

•     2000年5月8日,JDK1.3发布

•     2000年5月29日,JDK1.4发布

•     2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机

•     2001年9月24日,J2EE1.3发布

•     2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升

•     2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0

•     2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME

•     2006年12月,SUN公司发布JRE6.0

 

Java运行时环境

Java运行时环境,即Java Runtime Environment,简称为JRE,是在任何平台上运行Java编写的程序都需要用到的软件。终端用户可以以软件或者插件方式得到和使用JRE。Sun公司还发布了一个JRE的更复杂的版本,叫做JDK,即Java 2 开发包,里面包含了Java需要的编译器、参考文档和调试器等。

JRE的成分:

•     Java的类库,包含了编译Java程序所需要的最内核文件。

•     内核库文件,其中有

•     数据结构的库,包括列表、字典和树等

•     XML分析库

•     安全方面应用库

•     国际化和本地化应用库

•     综合库文件,包含了程序员和其他系统通信的功能文件。

•     JDBC,即Java数据库联通的API

•     JNDI,即Java命名和目录接口

•     RMI和CORBA用于重新分发软件

•     用户界面库文件,包含:

•     AWT,即抽象窗口开发包,提供了产生图形用户界面所需要的功能

•     Swing库

•     其他用于回访媒体文件、录音、截图的库

•     一个用于执行软件的Java虚拟机

•     插件,可以在浏览器里面使用

•     JWS,可以让终端用户连接到互联网

•     许可文件和文档

 

Java2平台

Sun公司在1998年发表JDK1.2版本的时候,使用了新名称Java 2 Platform,即“Java2平台”。修改后的JDK称为Java 2 Software Develping Kit(即J2SDK),但仍然采用1.2、1.3、1.4等版本号,一般都统称为Java2,即JDK1.2以后的版本都叫Java2 SDK。 

 

在Java2平台下,SUN重新定义了Java技术的架构,将其分三个方向的版本。适用于小型设备和智能卡的Java2平台Micro版(Java2 Platform Standard Edition, J2SE), 适用于桌面系统的Java2平台标准版(Java 2 Platform Standard   Edition, J2SE), 和适用于以企业为环境而开发应用程序的Java 2平台企业版 (Java2 Platform Enterprise Edition,    J2EE)。

 

2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名以取消其中的数字“2”:J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java ME。

 

Java2平台包括标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本:

Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程。

Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、JSP、XML、事务控制。

Micro Edition(微缩版) J2ME 包含J2SE中一部分类,用于消费类电子产品的软件开发。比如:呼机、智能卡、手机、PDA、机顶盒。

它们的范围是:J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类。

 

随着Java技术的发展,J2EE平台得到了迅速的发展,成为Java语言中最活跃的体系之一。现如今,J2EE不仅仅是指一种标准平台,它更多的表达着一种软件架构和设计思想。

 

J2EE

J2EE是一系列技术标准所组成的平台,包括:

•     Applet - Java Applet

•     EJB - 企业级JavaBean(Enterprise Java Beans)

•     JAAS - Java Authentication and Authorization Service

•     JACC - J2EE Authorization Contract for Containers

•     JAF - Java Beans Activation Framework

•     JAX-RPC - Java API for XML-Based Remote Procedure Calls

•     JAX-WS - Java API for XML Web Services

•     JAXM

•     JAXP - Java XML解析API(Java API for XML Processing)

•     JAXR - Java API for XML Registries

•     JCA - J2EE连接器架构(J2EE Connector Architecture)

•     JDBC - Java数据库联接(Java Database Connectivity)

•     JMS - Java消息服务(Java Message Service)

•     JMX - Java Management

•     JNDI - Java名字与目录接口(Java Naming and Directory Interface)

•     JSF - Java Server Faces

•     JSP - Java服务器页面(Java Server Pages)

•     JSTL - Java服务器页面标准标签库(Java Server Pages Standard Tag Library)

•     JTA - Java事务API(Java Transaction API)

•     JavaMail

•     Servlet - Java Servlet API

•     StAX - Streaming APIs for XML Parsers

•     WS - Web Services

 

J2SE Code Names

Most versions of the Java 2 Platform Standard Edition have an internal code or project name, as listed below. The dates listed are the final product release dates (following any beta releases). Feature releases are shown in bold.

Starting with Tiger, each version has two version numbers: an internal number, such as 1.5.0, and an external number, such as 5.0.

Since 1.2.2, major releases 1.3, 1.4.0, 5.0 and 6) are named after birds or mammals, while minor releases are named after insects, given that they are bug-fix releases. (Hopper is short for grasshopper and ladybird is another term for ladybug.)

Also see:

      J2SE Version String Naming Conventions

      J2SE 5.0 Name and Version Change

VERSION      CODE NAME   RELEASE DATE

JDK 1.1.4       Sparkler  Sept 12, 1997

JDK 1.1.5       Pumpkin  Dec 3, 1997

JDK 1.1.6       Abigail     April 24, 1998

JDK 1.1.7       Brutus     Sept 28, 1998

JDK 1.1.8       Chelsea   April 8, 1999

J2SE 1.2 Playground     Dec 4, 1998

J2SE 1.2.1      (none)     March 30, 1999

J2SE 1.2.2      Cricket    July 8, 1999

J2SE 1.3 Kestrel    May 8, 2000

J2SE 1.3.1      Ladybird  May 17, 2001

J2SE 1.4.0      Merlin     Feb 13, 2002

J2SE 1.4.1      Hopper    Sept 16, 2002

J2SE 1.4.2      Mantis     June 26, 2003

J2SE 5.0 (1.5.0)     Tiger       Sept 29, 2004