Heim >Java >javaLernprogramm >Welche sind die am häufigsten verwendeten Werkzeugbibliotheken in der Java-Entwicklung?

Welche sind die am häufigsten verwendeten Werkzeugbibliotheken in der Java-Entwicklung?

王林
王林nach vorne
2023-04-20 11:16:121967Durchsuche

Häufig verwendete Toolbibliotheken im Java-Entwicklungsprozess

Apache Commons-Klassenbibliothek

Apache Commons ist ein sehr nützliches Toolkit, das allgemeinen, vorgefertigten Code zur Lösung verschiedener praktischer Probleme bereitstellt, ohne dass wir Programmierer das Rad neu erfinden müssen. Eine detaillierte Einführung in diese Klassenbibliothek finden Sie auf der offiziellen Website. In der folgenden Tabelle sind einige der Werkzeugsätze aufgeführt. In unserem üblichen Entwicklungsprozess können wir das passende Toolkit entsprechend unseren eigenen Bedürfnissen auswählen.

Komponenten Beschreibung Neueste Version Veröffentlicht
BCEL Byte Code Engineering Library – Java-Klassendateien analysieren, erstellen und bearbeiten 6.3.1 24.03.2019
BeanUtils Einfach zu verwendende Wrapper rund um die Java Reflection- und Introspection-APIs. 1.9.3 26.09.2016
BSF Bean Scripting Framework – Schnittstelle zu Skriptsprachen, einschließlich JSR-223 3.1 24.06.2010
Kette Implementierung des Chain of Responsibility-Musters. 1.2 2008/6/2
CLI Parser für Befehlszeilenargumente. 1.4 9.3.2017
Codec Allgemeine Kodierungs-/Dekodierungsalgorithmen (z. B. Phonetik, Base64, URL). 1.12 16.02.2019
Sammlungen Erweitert oder erweitert das Java Collections Framework. 4.3 5.2.2019
Komprimieren Definiert eine API für die Arbeit mit tar-, zip- und bzip2-Dateien. 1.18 16.08.2018
Konfiguration Lesen von Konfigurations-/Einstellungsdateien in verschiedenen Formaten. 2.4 29.10.2018
Krypto Eine kryptografische Bibliothek, die mit AES-NI-Wrapping-OpenSSL- oder JCE-Algorithmus-Implementierungen optimiert ist. 1.0.0 22.07.2016
CSV Komponente zum Lesen und Schreiben von durch Kommas getrennten Wertedateien. 1.6 25.09.2018
Daemon Alternativer Aufrufmechanismus für Unix-Daemon-ähnlichen Java-Code. 1.0.15 3.4.2013
DBCP Datenbankverbindungs-Pooling-Dienste. 2.6.0 19.02.2019
DbUtils JDBC-Hilfsbibliothek. 1,7 20.07.2017
Fermenter XML-zu-Java-Objekt-Mapping-Dienstprogramm. 3.2 13.12.2011
E-Mail Bibliothek zum Versenden von E-Mails aus Java. 1,5 1.8.2017
Exec API für den Umgang mit der externen Prozessausführung und Umgebungsverwaltung in Java. 1.3 6.11.2014
DateiUpload Datei-Upload-Funktion für Ihre Servlets und Webanwendungen. 1.4 16.01.2019
Funktor Ein Funktor ist eine Funktion, die als Objekt manipuliert werden kann, oder als Objekt, das eine einzelne generische Funktion darstellt. 1 2011-??-??
Geometrie Raum und Koordinaten. 1 2018-???-??
Bildgebung (früher Sanselan genannt) Eine reine Java-Bildbibliothek. 0,97-Inkubator 20.02.2009
IO Sammlung von I/O-Dienstprogrammen. 2.6 15.10.2017
JCI Java-Compiler-Schnittstelle 1.1 14.10.2013
JCS Java-Caching-System 2.2,1 23.08.2018
Gelee XML-basierte Skript- und Verarbeitungs-Engine. 1.0.1 27.09.2017
Jexl Ausdruckssprache, die die Ausdruckssprache der JSTL erweitert. 3.1 14.04.2017
JXPath Dienstprogramme zum Bearbeiten von Java Beans mithilfe der XPath-Syntax. 1.3 14.08.2008
Lang Bietet zusätzliche Funktionalität für Klassen in java.lang. 3,9 15.04.2019
Protokollierung Wrapper um eine Vielzahl von Protokollierungs-API-Implementierungen. 1.2 11.07.2014
Mathe Leichte, eigenständige Mathematik- und Statistikkomponenten. 3,5 17.04.2015
Netz Sammlung von Netzwerkdienstprogrammen und Protokollimplementierungen. 3.6 15.02.2017
Zahlen Zahlentypen (komplex, Quaternion, Bruch) und Dienstprogramme (Arrays, Kombinatorik). 1 2017-???-??
OGNL Eine Objektgraph-Navigationssprache 4 2013-???-??
Pool Generische Objekt-Pooling-Komponente. 2.6.2 11.04.2019
Proxy Bibliothek zum Erstellen dynamischer Proxys. 1 28.02.2008
RDF Gemeinsame Implementierung von RDF 1.1, die von Systemen auf der JVM implementiert werden könnte. 0.3.0-inkubierend 15.11.2016
RNG Implementierungen von Zufallszahlengeneratoren. 1.2 12.12.2018
SCXML Eine Implementierung der State Chart XML-Spezifikation mit dem Ziel, eine Java-SCXML-Engine zu erstellen und zu verwalten. Sie ist in der Lage, eine mithilfe eines SCXML-Dokuments definierte Zustandsmaschine auszuführen und abstrahiert die Umgebungsschnittstellen. 0,9 1.12.2008
Statistiken Statistiken. 0,1 ????-??-??
Text Apache Commons Text ist eine Bibliothek, die sich auf Algorithmen konzentriert, die mit Strings arbeiten. 1.6 16.10.2018
Validator Framework zum Definieren von Validatoren und Validierungsregeln in einer XML-Datei. 1.6 21.02.2017
VFS Virtuelle Dateisystemkomponente zur Behandlung von Dateien, FTP, SMB, ZIP und dergleichen als ein einziges logisches Dateisystem. 2.3 4.2.2019
Weber Bietet eine einfache Möglichkeit, kompilierten Bytecode zu verbessern (zu verweben). 2 7.9.2018

Zusätzlich zu den Toolkits in der obigen Tabelle enthält das Apache Common-Projekt auch die folgenden Toolkits, von denen http-client ein häufig verwendetes ist.

  • Cactus: Cactus ist ein einfaches Test-Framework zum Unit-Testen von serverseitigem Java-Code (Servlets, EJBs, Tag Libs, Filter, ...). Die Absicht von Cactus besteht darin, die Kosten für das Schreiben von Tests für serverseitigen Code zu senken

  • HiveMind: HiveMind ist ein Dienst- und Konfigurations-Mikrokernel, mit dem Sie Ihre Anwendung mithilfe einer serviceorientierten Architektur erstellen können.

  • HttpClient 3.x: Framework für die Arbeit mit der Client-Seite des HTTP-Protokolls.

  • Benennung: Das Unterprojekt „Benennung“ wird gemeinsamen JNDI-Code zusammen mit verschiedenen JNDI-Anbietern enthalten.

Guava-Klassenbibliothek

Das Guava-Projekt enthält mehrere Kernbibliotheken, auf die sich die Java-Projekte von Google weitgehend verlassen, z. B. Sammlungen, Caching, Unterstützung von Grundelementen, Parallelitätsbibliotheken, allgemeine Anmerkungen, String-Verarbeitung, E/A usw. Die allgemeinen Funktionspunkte im Guava-Toolkit sind unten aufgeführt, um sie bei Bedarf leicht nachschlagen und verwenden zu können.

Grundlegende Dienstprogramme [Grundlegende Dienstprogramme]
  • Verwenden und vermeiden Sie Null: Null ist mehrdeutig, kann zu verwirrenden Fehlern führen und manchmal unangenehm sein. Viele Guava-Dienstprogrammklassen verwenden Fail-Fast, um Nullwerte abzulehnen, anstatt sie blind zu akzeptieren.

  • Voraussetzungen: Erleichtern Sie die Bedingungsüberprüfung in Methoden.

  • Allgemeine Objektmethoden: Vereinfachen Sie die Implementierung von Objektmethoden wie hashCode() und toString().

  • Sortieren: Guavas leistungsstarker „Fluid Style Comparator“

  • Throwables: Vereinfacht die Weitergabe und Überprüfung von Ausnahmen und Fehlern.

Sammlungen
Guavas Erweiterung der JDK-Sammlung, dem ausgereiftesten und bekanntesten Teil von Guava

  • Unveränderliche Sammlungen: Defensive Programmierung und Leistungsverbesserungen mit unveränderlichen Sammlungen.

  • Neue Sammlungstypen: Multisets, Multimaps, Tabellen, bidirektionale Karten usw.

  • Leistungsstarke Sammlungstoolklasse: Bietet Sammlungstools, die in java.util.Collections nicht zu finden sind.

  • Erweitern Sie Dienstprogrammklassen: Erleichtern Sie die Implementierung und Erweiterung von Sammlungsklassen, z. B. durch das Erstellen von Sammlungsdekoratoren oder die Implementierung von Iteratoren.

Caches
Guava Cache: Lokale Cache-Implementierung, unterstützt mehrere Cache-Ablaufstrategien.

Funktionaler Stil[Funktionale Redewendungen]
Die funktionale Unterstützung von Guava kann Ihren Code erheblich vereinfachen, Sie sollten ihn jedoch mit Vorsicht verwenden.

Parallelität
Leistungsstarke und dennoch einfache Abstraktionen, die das Schreiben von korrektem gleichzeitigem Code einfacher machen

  • ListenableFuture: Zukunft, die nach Abschluss einen Rückruf auslöst

  • Service-Framework: Abstrakte Dienste, die ein- und ausgeschaltet werden können, um Ihnen dabei zu helfen, die Statuslogik des Dienstes aufrechtzuerhalten

String-Verarbeitung [Strings]
Sehr nützliche String-Tools, einschließlich Teilen, Verketten, Füllen und anderer Operationen

Primitive
Erweitern Sie native Typoperationen (z. B. int, char), die nicht vom JDK bereitgestellt werden, einschließlich nicht signierter Formen bestimmter Typen

Bereiche
Intervall-API für vergleichbare Typen, einschließlich kontinuierlicher und diskreter Typen

I/O
Vereinfachen Sie E/A, insbesondere E/A-Stream- und Dateivorgänge, für Java 5- und 6-Versionen

Hash[Hash]
Bietet eine komplexere Hash-Implementierung als Object.hashCode() und eine Implementierung des Bloom-Filters

Veranstaltungsbus [EventBus]
Publish-Subscribe-Modell der Komponentenkommunikation, Komponenten müssen jedoch nicht explizit bei anderen Komponenten registriert werden

Mathematische Operationen [Mathe]
Optimierte und vollständig getestete Mathe-Tools

Reflexion
Guavas Java-Reflektionsmechanismus-Toolklasse

Gängige Werkzeugklassen im Frühjahr

  • FileCopyUtils;

  • WebUtil;

Das obige ist der detaillierte Inhalt vonWelche sind die am häufigsten verwendeten Werkzeugbibliotheken in der Java-Entwicklung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen