List of Java APIs: Difference between revisions

Content deleted Content added
m Add JDA
Andbin (talk | contribs)
Added links
 
(46 intermediate revisions by 32 users not shown)
Line 1:
{{Short description|none}}
 
{{Multiple issues|
{{Citation style|date=December 2017|details=Violates Wikipedia:External links: "Wikipedia articles may include links to web pages outside Wikipedia (external links), but they should not normally be used in the body of an article."}}
{{more citations needed|date=December 2017}}
}}
 
There are two types of [[Java (programming language)|Java programming language]] [[Application programming interface|application programming interfaces (APIs)]]:
 
* The official core Java API, contained in the Android (Google), SE (OpenJDK and Oracle), [[MicroEJ]]. These packages (java.* packages) are the core Java language packages, meaning that programmers using the Java language had to use them in order to make any worthwhile use of the Java language.
* Optional APIs that can be downloaded separately. The specification of these APIs are defined according to many different organizations in the world (Alljoyn, OSGi, Eclipse, JCP, E-S-R, etc.).
 
The following is a partial list of application programming interfaces (APIs) for Java.
 
==APIs==
{| class="wikitable" style="text-align: centercentre"
|-
! Name
Line 15 ⟶ 29:
| E-S-R consortium
| [http://www.e-s-r.net here]
|
|-
| [[Java Data Objects]]
| JDO
| A specification of Java object [[Persistence (computer science)| persistence]].
|-
| Android API
Line 38 ⟶ 51:
| JNDI
| An API for [[directory service]]s.
|
|-
| [[JavaJakarta Persistence API]]
| JPA
| A specification for [[object-relational mapping]].
| [https://jcpjakarta.orgee/enspecifications/jsrpersistence/detail?id=338 JSRavailable 338here]
|-
| [[Java Speech API]]
Line 65 ⟶ 77:
| [https://sourceforge.net/projects/javausbapiforwi/ available here]
|-
| RestFB
| Facebook4j
| (none)
| Facebook API wrapper in Java.
| [https://facebook4jrestfb.github.io/en/index.htmlcom available here]
|-
| Twitter4j
Line 75 ⟶ 87:
| [http://twitter4j.org/en/index.html available here]
|-
| Java Discord Java API
| JDA
| Java library for the Discord API
| [https://github.com/DV8FromTheWorld/JDA available here]
|-
| Mixin
| SpongePowered
| This library adds ability to change existing code
| [https://github.com/SpongePowered/Mixin available here]
|-
| Wikipedia4j
| llmjava
| It's a library that you can use to search and retrieve documents from Wikipedia
| [https://github.com/llmjava/wikipedia4j available here]
|-
| Oshi
| oshi
| Library for working with [[Computer]] components and their parameters
| [https://github.com/oshi/oshi available here]
|-
| [[Google Guava|Guava]]
| Google
| A set of core Java libraries for collections, caching, primitives support, and more.
| [https://github.com/google/guava available here]
|-
| [[Apache Commons]]
| Apache
| A collection of reusable Java components, including utilities for collections, math, IO, and more.
| [https://commons.apache.org/ available here]
|-
| [[Log4j]]
| Apache
| A widely used Java logging library.
| [https://logging.apache.org/log4j/ available here]
|-
| [[JUnit]]
| JUnit
| A widely used testing framework for Java.
| [https://junit.org available here]
|-
| Caffeine
| (none)
| A high-performance caching library for Java.
| [https://github.com/ben-manes/caffeine available here]
|-
| Lombok
| (none)
| A Java library that reduces boilerplate code with annotations.
| [https://projectlombok.org available here]
|-
| [[SLF4J]]
| (none)
| A simple logging facade for Java, often used with Logback or Log4j.
| [https://www.slf4j.org available here]
|-
| Retrofit
| (none)
| A type-safe HTTP client for Java and Android.
| [https://square.github.io/retrofit/ available here]
|-
| OkHttp
| Square
| An HTTP client for Java with features like connection pooling and GZIP compression.
| [https://square.github.io/okhttp/ available here]
|-
| [[Gson]]
| Google
| A library for converting Java objects to JSON and back.
| [https://github.com/google/gson available here]
|-
| [[Jackson (API)|Jackson]]
| FasterXML
| A high-performance JSON processing library.
| [https://github.com/FasterXML/jackson available here]
|-
| Kryo
| EsotericSoftware
| A fast and efficient object graph serialization framework.
| [https://github.com/EsotericSoftware/kryo available here]
|-
| [[Apache Kafka]]
| Apache
| A distributed event streaming platform.
| [https://kafka.apache.org/ available here]
|-
| [[Netty (software)|Netty]]
| (none)
| An asynchronous event-driven network application framework.
| [https://netty.io available here]
|-
| [[Vert.x]]
| Eclipse
| A reactive toolkit for building distributed applications.
| [https://vertx.io available here]
|-
| [[Spring Framework]]
| Spring
| A powerful framework for building Java applications.
| [https://spring.io/ available here]
|-
| [[Micronaut (framework)|Micronaut]]
| (none)
| A lightweight framework for building microservices and cloud-native apps.
| [https://micronaut.io available here]
|-
| [[Hibernate (framework)|Hibernate]]
| (none)
| A powerful ORM (Object-Relational Mapping) framework.
| [https://hibernate.org/ available here]
|-
| Forge
| (none)
| A popular Minecraft modding API for Java Edition.
| [https://files.minecraftforge.net/ available here]
|-
| NeoForge
| (none)
| A community-driven fork of Forge for Minecraft modding.
| [https://github.com/NeoForged/ available here]
|-
| Fabric
| (none)
| A lightweight, modular Minecraft modding toolchain.
| [https://fabricmc.net/ available here]
|-
| Quilt
| (none)
| A community-driven fork of Fabric with additional features.
| [https://quiltmc.org/ available here]
|}
 
 
{| class="wikitable" style="text-align: center"
 
{| class="wikitable"
|-
! Name
Line 87 ⟶ 226:
! [[Java package]](s) that contain the API
|-
| [[JavaBeansJakarta Activation Framework]]
| JAF
| javax<code>jakarta.activation</code>
|-
| [[JavaMailJakarta Mail]]
| (none)
| javax<code>jakarta.mail</code>
|-
| [[JavaJakarta Message ServiceMessaging]]
| JMS
| javax<code>jakarta.jms</code>
|-
| [[JavaServerJakarta Faces]]
| JSF
| javax<code>jakarta.faces</code>
|}
 
{| class="wikitable" style="text-align:center"
|-
! Name
Line 110 ⟶ 249:
! Available from
|-
| [[JAX-RPC|Java API forJakarta XML-Based RPC]]
| JAX-RPC
| [https://jakarta.ee/specifications/xml-rpc/ here] and [https://github.com/eclipse-ee4j/jax-rpc-ri here]
| [http://java.sun.com/xml/downloads/jaxrpc.html available here]
|-
| [[XQuery API for Java]]
Line 119 ⟶ 258:
|}
 
{| class="wikitable" style="text-align: center"
|-
! Name
Line 137 ⟶ 276:
| [http://www.stm32java.com available here]
|-
| IS2T's [[MicroEJ]] embedded platformsplatform
| MicroEJ
| [httphttps://www.is2tmicroej.com/ available here]
|}
 
Following is a very incomplete list, as the number of APIs available for the Java platform is overwhelming.
 
;[[Rich Clientclient platform|Rich client platforms]]
* [[Eclipse (software)|Eclipse Rich Client Platform (RCP)]]
* [[NetBeans|NetBeans Platform]]
Line 150 ⟶ 289:
;Office_compliant libraries
* [[Apache POI]]
* [[Aspose API|Aspose]]
* [[JXL (API)|JXL]] - for [[Microsoft Excel]]
* [[JExcel]] - for [[Microsoft Excel]]
Line 181 ⟶ 319:
plugged into the VM) and by providing for areas of memory
that are not subject to garbage collection, along with threads that are
not preemptablepreempt able by the garbage collector. These areas are instead
managed using region-based memory management.
 
== Real-Time Specification for Java ==
The ''Real-Time Specification for Java'' (RTSJ) is a set of interfaces and behavioral refinements that enable real-time computer programming in the Java programming language. RTSJ 1.0 was developed as JSR 1 under the Java Community Process, which approved the new standard in November, 2001. RTSJ 2.0 is being developed under JSR 282. A draft version is available at JSR 282 JCP Page. More information can be found at RTSJ 2.0
 
* [[Javolution]]
 
;Windowing libraries
* [[Standard Widget Toolkit]] (SWT)
 
;Physics libraries
* JBox2D
* JBullet
* dyn4j
 
==See also==
* [[Java (software platform)|Java Platform]]
* [[Java ConcurrentMap]]
* [[List of Java frameworks]]
 
==External links==
* [http://apisonar.com APISonar - Search Java API examples]
 
[[Category:Java APIs| ]]
[[Category:Lists of software|Java APIs]]