Seznam Java API - List of Java APIs
Existují dva typy aplikačních programovacích rozhraní (API) programovacího jazyka Java :
- Oficiální základní Java API, obsažené v Android (Google), SE (OpenJDK a Oracle), MicroEJ. Tyto balíčky (balíčky java.*) Jsou základními jazykovými balíčky Java, což znamená, že je museli používat programátoři používající jazyk Java, aby mohli smysluplně využívat jazyk Java.
- Volitelná rozhraní API, která lze stáhnout samostatně. Specifikace těchto API jsou definovány podle mnoha různých organizací na světě (Alljoyn, OSGi, Eclipse, JCP, ESR atd.).
Následuje částečný seznam aplikačních programovacích rozhraní (API) pro Javu.
API
| název | Akronym | Popis a historie verzí | dostupný z |
|---|---|---|---|
| Pokročilé zobrazování Java | JAI | Sada rozhraní, která podporují model programování na vysoké úrovni umožňující snadnou manipulaci s obrázky . | |
| Asociace pro standardizaci vestavěných platforem | Konsorcium ESR | tady | |
| Datové objekty Java | JDO | Specifikace perzistence objektu Java . | |
| Android API | tady | ||
| JavaHelp | Plně vybavený, rozšiřitelný systém nápovědy, který vám umožňuje začlenit online nápovědu do apletů, komponent, aplikací, operačních systémů a zařízení. | k dispozici zde | |
| Java Media Framework | JMF | Rozhraní API, které umožňuje přidávání zvukových, obrazových a jiných časových médií do aplikací a apletů Java. | |
| Rozhraní Java pro pojmenování a adresář | JNDI | Rozhraní API pro adresářové služby . | |
| Java Persistence API | JPA | Specifikace pro objektově relační mapování . | JSR 338 |
| Java Speech API | JSAPI | Toto API umožňuje syntézu řeči a rozpoznávání řeči . | |
| Java 3D | J3D | Graf scény založené 3D API. | k dispozici zde |
| Java OpenGL | JOGL | Wrapper knihovna pro OpenGL . | k dispozici zde |
| Java USB pro Windows | (žádný) | Komunikace Java aplikací pomocí USB | k dispozici zde |
| RestFB | (žádný) | Facebook API wrapper v Javě. | k dispozici zde |
| Twitter4j | (žádný) | Java knihovna pro Twitter API | k dispozici zde |
| Discord Java API | JDA | Knihovna Java pro API Discord | k dispozici zde |
| název | Akronym | Balíčky Java, které obsahují API |
|---|---|---|
| Aktivační rámec JavaBeans | JAF | javax.activation |
| JavaMail | (žádný) | javax.mail |
| Služba zpráv Java | JMS | javax.jms |
| Tváře JavaServeru | JSF | javax.faces |
| název | Akronym | dostupný z |
|---|---|---|
| Java API pro RPC na bázi XML | JAX-RPC | k dispozici zde |
| XQuery API pro Javu | XQJ | tady a tady |
| název | Akronym | dostupný z |
|---|---|---|
| Připojená omezená konfigurace zařízení | CLDC | Referenční implementace je k dispozici zde |
| Java Telephony API | JTAPI | k dispozici zde |
| Technologie Java STM32 | STM32Java | k dispozici zde |
| Integrovaná platforma MicroEJ | MicroEJ | k dispozici zde |
Následuje velmi neúplný seznam, protože počet API dostupných pro platformu Java je ohromující.
- Knihovny vyhovující Office
- Apache POI
- JXL - pro Microsoft Excel
- JExcel - pro Microsoft Excel
- Komprese
- LZMA SDK, implementace Java z SDK používá populární 7-Zip archivní soubor programu ( k dispozici zde )
- JSON
- Herní motory
- Knihovny v reálném čase
Real time Java je univerzální termín pro kombinaci technologií, které programátorům umožňují psát programy, které splňují požadavky systémů v reálném čase v programovacím jazyce Java.
Sofistikovaná správa paměti Java, nativní podpora pro vlákna a souběžnost, bezpečnost typů a relativní jednoduchost vytvořily poptávku po jeho použití v mnoha doménách. Jeho možnosti byly vylepšeny tak, aby podporovaly výpočetní potřeby v reálném čase:
- Java podporuje model vláken založený na striktní prioritě.
- Protože vlákna Java podporují priority, zamykací mechanismy Java podporují techniky vyhýbání se prioritním inverzím, jako je prioritní dědičnost nebo protokol prioritního stropu.
Aby překonala typické potíže v reálném čase, zavedla komunita Java specifikaci pro real-time Java, JSR001. Objevila se řada implementací výsledné Real-Time Specification for Java (RTSJ), včetně referenční implementace společností Timesys, IBM WebSphere Real Time, Sun Microsystems Java SE Real-Time Systems, [1] Aonix PERC nebo JamaicaVM z aicas.
RTSJ řešil kritické problémy tím, že nařídil minimální (pouze dvě) specifikaci pro model vláken (a umožnil připojení dalších modelů k virtuálnímu počítači) a poskytnutím oblastí paměti, které nepodléhají shromažďování odpadků, spolu s vlákny, která není možné, aby je popelář mohl. Tyto oblasti jsou místo toho spravovány pomocí správy paměti založené na oblasti.
Specifikace v reálném čase pro Javu
Real-Time Specifikace pro Javu (RTSJ) je sada rozhraní a vylepšení chování, které umožňují v reálném čase počítačové programování v programovacím jazyce Java. RTSJ 1.0 byl vyvinut jako JSR 1 v rámci Java Community Process, který schválil nový standard v listopadu 2001. RTSJ 2.0 je vyvíjen pod JSR 282. Návrh verze je k dispozici na JCP 282 JCP Page. Více informací naleznete na RTSJ 2.0
- Okenní knihovny
Okenní knihovna je sada tříd dostupných v Runtime C ++ API Streams Processing Language (SPL) Runtime API a SPL Java ™ Operator API. Knihovna se používá k implementaci primitivních operátorů, které potřebují okna podle sémantiky oken SPL. Použití knihovny oken poskytuje konzistentní sémantiku zásad oken mezi operátory a zjednodušuje implementaci operátora.
SPL nabízí sklopná i posuvná okna. Oba typy oken uchovávají všechna příchozí data v paměti, dokud se nespustí její zásady vystěhování z tuple. Použijte podporu SPL pro Windows, když lze funkčnost požadovanou primitivním operátorem vytvořit pomocí sémantiky poskytované konstrukcemi oken SPL.
Jedním příkladem operátoru ze SPL Standard Toolkit, který používá knihovnu oken a syntaxi, je Aggregateoperátor. Operátorem je příklad, který ukládá do vyrovnávací paměti nedávno přijaté řazené kolekce členů, ale který nepoužívá knihovnu oken a syntaxi DeDuplicate. K této akci dochází, protože tento operátor má jiné vystěhování a spouštěcí sémantiku, než jaké poskytuje SPL. Tento operátor potřebuje udržovat pouze jedinečné řazené kolekce členů a zahodí všechny opakované řazené kolekce členů, které byly přijaty v časovém okně.
S knihovnou oken mohou vývojáři specifikovat různé zásady vystěhování a spouštění, ale mohou implementovat akce zpracování událostí nezávisle na podrobnostech zásad okna. Při implementaci primitivních operátorů v C ++ a Javě existuje několik rozdílů, které využívají výhody klauzule okna SPL.
V implementaci C ++ nemají vývojáři žádnou povinnost používat knihovnu oken (preferovanou praxí je používat knihovnu). Mohou používat API pro generování kódu operátora SPL pouze k získání zadaných zásad okna pro danou instanci operátora. Potom mohou generovat kód pomocí jiných kontejnerů. Kromě toho mohou vývojáři během doby generování kódu kontrolovat platné konfigurace oken.
Při implementaci Java musí vývojáři používat knihovnu oken. Této akce lze dosáhnout registrací třídy, která implementuje com.ibm.streams.operator.window.StreamWindowListener<T>události zpracovávané oknem (com.ibm.streams.operator.window.StreamWindow<T>). Toto použití je vyžadováno, protože operátory Java nejsou založeny na generování kódu. V důsledku toho jsou okna automaticky spravována modulem runtime, aby byla zaručena sémantika oken SPL. Vývojáři mohou během běhu zkontrolovat platné konfigurace oken kontrolou zásad oken spojených s daným vstupním portem.
- Standard Widget Toolkit (SWT)
- Fyzikální knihovny
- JBox2D
- JBullet
- dyn4j