List of Java APIs
There are 3 types of Java Programming Language Application Programming Interfaces (APIs)
- the official core Java API, contained in the JDK or JRE, of one of the editions of the Java Platform. The three editions of the Java Platform are Java ME (Micro edition), Java SE (Standard edition), and Java EE (Enterprise edition).
- optional official APIs that can be downloaded separately. The specification of these APIs are defined according to a Java Specification Request (JSR), and sometimes some of these APIs are later included in the core APIs of the platform (the most notable example of this kind is Swing).
- unofficial APIs, developed by third parties, but not related to any JSRs.
Third parties can freely implement any JSR specifications for an official API (even for the core API of the language), providing that they conform to the Technology Compatibility Kit (TCK) for this JSR (the TCK is a suite of tests that checks conformance of implementations for a JSR). The result of this freedom is that many official APIs have more implementations than the Sun's Reference implementation (RI).
The following is a partial list of Application Programming Interfaces (APIs) for the Java Programming Language.
Official APIs
Java Platform, Standard Edition (Java SE)
Name | Acronym | Description and Version History | Available from |
---|---|---|---|
Java Advanced Imaging | JAI | A set of interfaces that support a high-level programming model allowing to manipulate images easily. | |
Java Data Objects | JDO | A specification of Java object persistence. | |
JavaHelp | A full-featured, extensible help system that enables you to incorporate online help in applets, components, applications, operating systems, and devices. | ||
Java Media Framework | JMF | An API that enables audio, video and other time-based media to be added to Java applications and applets. | |
Java Naming and Directory Interface | JNDI | An API for directory services. | |
Java Persistence API | JPA | A specification for object-relational mapping. | JSR 338 |
Java Speech API | JSAPI | This API allows for speech synthesis and speech recognition. | |
Java 3D | J3D | A scene graph-based 3D API. | available here |
Java OpenGL | JOGL | A wrapper library for OpenGL. | available here |
Java USB for Windows | (none) | A USB communication of Java applications | available here |
Java Platform, Enterprise Edition (Java EE)
Bundled APIs (part of standard download)
Name | Acronym | Java package(s) that contain the API |
---|---|---|
JavaBeans Activation Framework | JAF | javax.activation |
JavaMail | (none) | javax.mail |
Java Message Service | JMS | javax.jms |
JavaServer Faces | JSF | javax.faces |
Optional APIs (downloaded separately)
Name | Acronym | Available from |
---|---|---|
Java API for XML-Based RPC | JAX-RPC | available here |
XQuery API for Java | XQJ | here and here |
Java Platform, Micro Edition (Java ME)
Name | Acronym | Available from |
---|---|---|
Connected Limited Device Configuration | CLDC | Reference implementation is available here |
Java Telephony API | JTAPI | available here |
Unofficial APIs (Released by third parties)
This list is very incomplete, as the number of APIs available for the Java platform is overwhelming.
- Rich Client Platforms
- Office_compliant libraries
- Compression
- LZMA SDK, the Java implementation of the SDK used by the popular 7-Zip file archive software (available here)
- Game engines
- Slick
- jMonkey Engine
- JPCT Engine
- LWJGL
- Real-time libraries
- Windowing libraries
- Standard Widget Toolkit (SWT)
- Physics Libraries
- JBox2D
- JBullet
Notes
See also
- Java (programming language)
- Java Platform
- Application programming interface
45