Jump to content

List of Java APIs

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 212.20.240.70 (talk) at 11:42, 9 March 2009 (Unofficial APIs (Released by third parties)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.


There are three types of Java Programming Language Application Programming Interfaces (APIs) :

It must be noted that 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)

Bundled APIs (part of standard download)[1]

Name Acronym Package(s) that contain the API Description and Version History
Abstract Window Toolkit AWT java.awt First released with version 1.0.
Swing javax.swing Included in J2SE 1.2 and later.
Accessibility javax.accessibility[2]
Drag n Drop java.awt.datatransfer
java.awt.dnd[3]
Image I/O javax.imageio
javax.imageio.*[4]
Sound javax.sound.midi
javax.sound.midi.spi
javax.sound.sampled
javax.sound.sampled.spi[5]
Java Database Connectivity JDBC java.sql
javax.sql[6]
Java Cryptography Extension JCE javax.crypto
javax.crypto.interfaces
javax.crypto.spec[7]
Included as part of J2SE 1.4 and later. Available as an optional package to versions 1.2 and 1.3.
Java Authentication and Authorization Service JAAS javax.security.auth Included in J2SE 1.4 and later, previously released as an optional package with version 1.3.
Java Secure Socket Extension JSSE javax.net
javax.net.ssl
java.security.cert[8]
A set of packages that enable secure Internet communications. Included as part of J2SE 1.4 and later, JSSE 1.0.3 is an optional package to the Java 2 SDK, versions 1.2 and 1.3.
Java Native Interface JNI Allows Java code running in the Java virtual machine (JVM) to call and be called[1] by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages, such as C, C++ and assembly.
Java Management Extensions JMX javax.management
javax.management.loading
javax.management.modelmbean
javax.management.monitor
javax.management.openmbean
javax.management.relation
javax.management.remote
javax.management.remote.rmi
javax.management.timer
A technology that supplies tools for managing and monitoring applications, system objects, devices (e.g. printers) and service oriented networks. Included as part of J2SE 1.5 and later, was an optional package prior to this.

Optional APIs (downloaded separately)

Name Acronym Description and Version History Available from
Java Advanced Imaging JAI An API which provides a set of interfaces that support a high-level programming model allowing to manipulate images easily.
Java Communications API JCA
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 Speech API JSAPI This API allows for speech synthesis
Java 3D J3D A scene graph-based 3D API. available here
Java OpenGL JOGL A wrapper library for OpenGL. available here

Java Platform, Enterprise Edition (Java EE)

Bundled APIs (part of standard download)

Name Acronym Java package(s) that contain the API
Java Message Service JMS
JavaServer Faces JSF javax.faces

Optional APIs (downloaded separately)

Name Acronym Available from
Java API for XML-Based RPC JAX-RPC available here

Java Platform, Micro Edition (Java ME)

Name Acronym Available from
Connected Limited Device Configuration CLDC Reference implementation is available here
Java Telephony API 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.

Compression
Numerical analysis
Real-time libraries
Rendering libraries
  • Cobra HTML parser and renderer library.
Windowing libraries

Notes

See also