Apache Commons est une boîte à outils très utile qui fournit du code commun prêt à l'emploi pour résoudre divers problèmes pratiques, sans que nous, programmeurs, ayons à réinventer la roue. Pour une introduction détaillée à cette bibliothèque de classe, veuillez visiter le site officiel. Le tableau ci-dessous répertorie certains des kits d'outils. Dans notre processus de développement habituel, nous pouvons choisir la boîte à outils appropriée en fonction de nos propres besoins.
Composants | Description | Dernière version | Libéré |
---|---|---|---|
BCEL | Bibliothèque d'ingénierie de code d'octet – analyser, créer et manipuler des fichiers de classe Java | 6.3.1 | 2019/3/24 |
BeanUtils | Wrappers faciles à utiliser autour des API Java de réflexion et d'introspection. | 1.9.3 | 2016/9/26 |
BSF | Bean Scripting Framework - interface avec les langages de script, notamment JSR-223 | 3.1 | 24/06/2010 |
Chaîne | Mise en œuvre du modèle de chaîne de responsabilité. | 1.2 | 2008/6/2 |
CLI | Analyseur d'arguments de ligne de commande. | 1.4 | 2017/3/9 |
Codec | Algorithmes généraux d'encodage/décodage (par exemple phonétique, base64, URL). | 1.12 | 2019/2/16 |
Collections | Étend ou augmente le Java Collections Framework. | 4.3 | 2019/2/5 |
Compresser | Définit une API pour travailler avec les fichiers tar, zip et bzip2. | 1.18 | 2018/8/16 |
Configuration | Lecture des fichiers de configuration/préférences dans divers formats. | 2.4 | 2018/10/29 |
Crypto | Une bibliothèque cryptographique optimisée avec les implémentations d'algorithmes Openssl ou JCE d'encapsulation AES-NI. | 1.0.0 | 22/07/2016 |
CSV | Composant pour lire et écrire des fichiers de valeurs séparées par des virgules. | 1.6 | 2018/9/25 |
Démon | Mécanisme d'invocation alternatif pour le code Java de type démon Unix. | 1.0.15 | 3/4/2013 |
DBCP | Services de pooling de connexions à des bases de données. | 2.6.0 | 2019/2/19 |
DbUtils | Bibliothèque d'assistance JDBC. | 1.7 | 20/07/2017 |
Digesteur | Utilitaire de mappage d'objets XML vers Java. | 3.2 | 2011/12/13 |
Bibliothèque pour envoyer des e-mails depuis Java. | 1.5 | 2017/8/1 | |
Exécutif | API pour gérer l'exécution de processus externes et la gestion de l'environnement en Java. | 1.3 | 2014/11/6 |
Téléchargement de fichiers | Capacité de téléchargement de fichiers pour vos servlets et applications Web. | 1.4 | 16/01/2019 |
Foncteur | Un foncteur est une fonction qui peut être manipulée comme un objet ou un objet représentant une fonction unique et générique. | 1 | 2011-??-?? |
Géométrie | Espace et coordonnées. | 1 | 2018-??-?? |
Imagerie (anciennement Sanselan) | Une bibliothèque d'images purement Java. | 0,97-incubateur | 20/02/2009 |
IO | Collection d'utilitaires d'E/S. | 2.6 | 2017/10/15 |
JCI | Interface du compilateur Java | 1.1 | 2013/10/14 |
JCS | Système de mise en cache Java | 2.2,1 | 2018/8/23 |
Gelée | Moteur de script et de traitement basé sur XML. | 1.0.1 | 27/09/2017 |
Jexl | Langage d'expression qui étend le langage d'expression du JSTL. | 3.1 | 14/04/2017 |
JXPath | Utilitaires pour manipuler les Java Beans à l'aide de la syntaxe XPath. | 1.3 | 2008/8/14 |
Lang | Fournit des fonctionnalités supplémentaires pour les classes en java.lang. | 3.9 | 2019/4/15 |
Journalisation | Wrapper autour d'une variété d'implémentations d'API de journalisation. | 1.2 | 2014/7/11 |
Mathématiques | Composants mathématiques et statistiques légers et autonomes. | 3.5 | 17/04/2015 |
Net | Collection d'utilitaires réseau et d'implémentations de protocoles. | 3.6 | 15/02/2017 |
Chiffres | Types de nombres (complexes, quaternions, fractions) et utilitaires (tableaux, combinatoires). | 1 | 2017-??-?? |
OGNL | Un langage de navigation objet-graphe | 4 | 2013-??-?? |
Piscine | Composant de pooling d'objets générique. | 2.6.2 | 2019/4/11 |
Proxy | Bibliothèque pour créer des proxys dynamiques. | 1 | 2008/2/28 |
RDF | Implémentation commune de RDF 1.1 qui pourrait être implémentée par les systèmes sur la JVM. | 0.3.0-incubation | 2016/11/15 |
RNG | Implémentations de générateurs de nombres aléatoires. | 1.2 | 2018/12/12 |
SCXML | Une implémentation de la spécification State Chart XML visant à créer et à maintenir un moteur Java SCXML. Il est capable d'exécuter une machine à états définie à l'aide d'un document SCXML et de résumer les interfaces de l'environnement. | 0.9 | 2008/12/1 |
Statistiques | Statistiques. | 0.1 | ????-???-??? |
Texte | Apache Commons Text est une bibliothèque axée sur les algorithmes travaillant sur les chaînes. | 1.6 | 2018/10/16 |
Validateur | Framework pour définir des validateurs et des règles de validation dans un fichier XML. | 1.6 | 2017/2/21 |
VFS | Composant de système de fichiers virtuel pour traiter les fichiers, FTP, SMB, ZIP et autres comme un système de fichiers logique unique. | 2.3 | 2019/2/4 |
Tisserand | Fournit un moyen simple d'améliorer (tisser) le bytecode compilé. | 2 | 7/9/2018 |
En plus des kits d'outils répertoriés dans le tableau ci-dessus, le projet Apache Common comprend également les kits d'outils suivants, parmi lesquels le client http est couramment utilisé.
Cactus : Cactus est un framework de test simple pour les tests unitaires de code Java côté serveur (Servlets, EJB, Tag Libs, Filtres, ...). L'objectif de Cactus est de réduire le coût d'écriture de tests pour le code côté serveur.
.HiveMind : HiveMind est un micro-noyau de services et de configuration HiveMind vous permet de créer votre application en utilisant une architecture orientée services.
. HttpClient 3.x : Framework pour travailler avec le côté client du protocole HTTP.
Naming : le sous-projet Naming contiendra du code JNDI commun ainsi que divers fournisseurs JNDI.
Le projet Guava contient plusieurs bibliothèques principales sur lesquelles s'appuient largement les projets Java de Google, telles que : les collections, la mise en cache, la prise en charge des primitives, les bibliothèques de concurrence, les annotations communes, le traitement des chaînes, les E/S, etc. Les points fonctionnels courants de la boîte à outils Guava sont répertoriés ci-dessous afin que vous puissiez vous y référer en cas de besoin.
Utilisez et évitez null : Null est ambigu, peut provoquer des erreurs déroutantes et met parfois les gens mal à l'aise. De nombreuses classes utilitaires Guava utilisent Fail-Fast pour rejeter les valeurs nulles au lieu de les accepter aveuglément.
Conditions préalables : facilitez la vérification des conditions dans les méthodes.
Méthodes Object courantes : simplifiez l'implémentation des méthodes Object, telles que hashCode() et toString().
Tri : le puissant « comparateur de styles fluides » de Guava
Throwables : simplifie la propagation et la vérification des exceptions et des erreurs.
Extension de Guava à la collection JDK, qui est la partie la plus mature et la plus connue de Guava
Collections immuables : programmation défensive et améliorations des performances avec des collections immuables.
Nouveaux types de collections : multisets, multimaps, tables, cartes bidirectionnelles, etc.
Classe d'outils de collecte puissante : fournit des outils de collecte introuvables dans java.util.Collections.
Étendre les classes utilitaires : facilitez l'implémentation et l'extension des classes de collection, comme la création de décorateurs de collection ou l'implémentation d'itérateurs.
Guava Cache : implémentation du cache local, prend en charge plusieurs stratégies d'expiration du cache.
La prise en charge fonctionnelle de Guava peut simplifier considérablement votre code, mais utilisez-la avec prudence.
Des abstractions puissantes mais simples facilitent l'écriture de code concurrent correct
ListenableFuture : Future qui déclenche un rappel après l'achèvement
Structure de service : services abstraits qui peuvent être activés et désactivés pour vous aider à maintenir la logique d'état du service
Outils de chaîne très utiles, notamment le fractionnement, la concaténation, le remplissage et d'autres opérations
Étendre les opérations de type natif (telles que int, char) non fournies par JDK, y compris les formulaires non signés de certains types
API d'intervalle pour les types comparables, y compris les types continus et discrets
Simplifiez les E/S, en particulier les opérations de flux et de fichiers d'E/S, pour les versions Java 5 et 6
Fournit une implémentation de hachage plus complexe que Object.hashCode() et fournit une implémentation du filtre Bloom
Mode de communication des composants publication-abonnement, mais les composants n'ont pas besoin d'être explicitement enregistrés avec d'autres composants
Outils mathématiques optimisés et entièrement testés
Classe d'outils du mécanisme de réflexion Java de Guava
FileCopyUtils;
WebUtil;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!