Article original: Awesome Java
Awesome List in Qiita
Cadre pour faciliter la cartographie des haricots *
dOOv - Fournit des API pour la validation et le mappage du modèle de domaine de type sécurisé, à l'aide d'annotations, de génération de code et de DSL de type sécurisé. Rend la validation et la cartographie des haricots rapides et faciles.
Dozer - Un mappeur qui copie les données d'un objet à un autre à l'aide d'annotations, d'API ou de paramètres XML.
JMapper-Utilisez les opérations de code d'octet pour un mappage de code rapide. Prend en charge les paramètres d'annotation, d'API ou XML.
MapStruct - Un générateur de code qui simplifie le mappage entre différents types de bean, basé sur les conventions d'approche de configuration.
ModelMapper --ModelMapper est une bibliothèque de mappage d'objets intelligente qui mappe automatiquement les objets les uns aux autres.
Orika-Orika est un framework de mappage Java Bean qui copie récursivement les données d'un objet à un autre (entre autres fonctionnalités). Faire.
Selma-Stupidly simple, static link mapper.Bean mapper basé sur un processus d'annotation.
Outils de gestion des cycles de création d'applications et des dépendances *
Apache Maven-Déclarative build and dependency management. Peut être préférable pour Apache Ant, qui utilise une approche procédurale et est difficile à maintenir.
Bazel - L'outil de création de Google pour une construction rapide et fiable du code.
Gradle --Construction incrémentale programmée via Groovy au lieu de la déclarer en XML.La gestion des dépendances de Maven fonctionne bien.
Une bibliothèque qui manipule les bytecodes par programmation *
ASM- Objectif général, bas niveau, manipulation et analyse de code d'octet.
Byte Buddy-Utilise une API fluide pour simplifier davantage la génération de code d'octet.
bytecode-viewer --Java 8 Jar & Android APK Reverse Engineering Suite. (GPL-3.0 uniquement)
Byteman - Principalement à des fins de test / dépannage, l'octet code est manipulé par DSL (règles) au moment de l'exécution. (LGPL-2.1 ou version ultérieure)
cglib - Bibliothèque de génération de code octet.
Javassist-Simplifie l'édition du code d'octet.
Mixin - Utilisez du vrai code Java pour gérer le code d'octet au moment de l'exécution.
Perses - Insertion dynamique des pannes / latence au niveau du bytecode selon les principes d'ingénierie du chaos.
Bibliothèque qui fournit des fonctionnalités de mise en cache *
cache2k - Bibliothèque de mise en cache haute performance en mémoire.
Caffeine - Haute performance et bibliothèque de mise en cache optimale.
Ehcache- Cache à usage général distribué.
Infinispan-High-performance magasin de données clé-valeur pour la mise en cache.
CLI
Toutes les bibliothèques liées à CLI *
ASCII Table - Une bibliothèque qui peut dessiner des tables en ASCII.
Airline - Un framework basé sur des annotations qui analyse les arguments de ligne de commande comme Git.
args4j - Une petite bibliothèque qui analyse les commandes comme des arguments similaires à javac.
Jansi - Code d'échappement ANSI pour formater la sortie de la console.
Rendu Java ASCII- Primitive graphique pour console.
JCommander- Un framework pour analyser les arguments de ligne de commande avec des types personnalisés et la validation en implémentant une interface.
jbock-Type-safe, sans réflexion, analyseur de ligne de commande basé sur les annotations.
Jexer- Bibliothèque de l'interface utilisateur texte (TUI) de la console avancée (et Swing). Fenêtres de glissement de souris, gestionnaire de fenêtres de terminal intégré et prise en charge des images sixel Similaire à Turbo Vision.
JLine-Modern Shell avec des fonctionnalités telles que la complétion et l'historique.
JOpt Simple- Un analyseur simple qui utilise la syntaxe POSIX getopt ()
et GNU getopt_long ()
. Utilisez plutôt l'API.
picocli - Les couleurs et les styles de ANSI aident les utilisateurs dans leur utilisation. Ils peuvent également être inclus comme source pour éviter les dépendances. Basé sur les annotations, POSIX / GNU / Peut être fortement typé pour toute syntaxe, sous-commandes, options et arguments de position.
Text-IO - Vous aide à créer des applications basées sur une console complète.
Lanterna --Bibliothèque GUI de texte de console similaire à curses. (LGPL-3.0 uniquement)
Un framework capable de gérer dynamiquement les applications au sein d'un cluster *
Apache Aurora --Apache Aurora est un framework Mesos pour les services de longue durée et les tâches cron.
Apache Mesos-Abstracts CPU de la machine, mémoire, stockage et autres ressources informatiques.
Singularity-Singularity est un framework Mesos qui facilite le déploiement et l'utilisation. Prend en charge les services Web, les travaux en arrière-plan, les travaux planifiés et les tâches ponctuelles. Faire.
Outils qui fournissent des métriques et des mesures de qualité *
Checkstyle - Règles de code et analyse statique standard (LGPL-2.1 ou version ultérieure)
Error Prone-Détecte les erreurs de programmation courantes comme des erreurs de compilation.
Infer- Le dernier outil d'analyse statique pour vérifier l'exactitude du code.
jQAssistant - Analyse de code statique avec le langage de requête basé sur Neo4J (GPL-3.0 uniquement)
NullAway - Éliminez les exceptions NullPointerExceptions avec une surcharge de temps de construction.
PMD - Analyse du code source pour trouver les mauvaises habitudes de codage.
SonarJava - Analyseur statique pour SonarQube et SonarLint. (GPL-3.0 uniquement)
Sourcetrail![C] - Navigateur de code source visuel.
Spoon-Une bibliothèque pour l'analyse et la conversion du code source Java.
Spotbugs - Analyse statique du bytecode pour trouver des bogues potentiels (GPL-3.0 uniquement)
Frameworks et outils permettant la collecte de métriques de couverture de code pour les suites de tests *
Clover - Le propre outil de couverture de code d'Atlassian qui repose sur la mesure du code source au lieu de la mesure du code d'octet.
Cobertura- Dépend des mesures de code d'octet hors ligne (ou statiques) et du chargement de classe pour collecter les métriques de couverture de code. (GPL) -2,0 uniquement)
JaCoCo - Un framework qui vous permet de collecter des métriques de couverture de code en utilisant à la fois des mesures de code d'octet hors ligne et d'exécution. Un plug-in de couverture de code Eclipse bien connu, Utilisé par EclEmma.
Un outil qui génère des modèles de code itératif pour réduire la redondance et la possibilité d'erreurs *
ADT4J-JSR-269 générateur de code pour les types de données algébriques.
Auto-Générer des classes d'usine, de service et de valeur.
FreeBuilder - Génération automatique de modèles Builder.
Immutables - Un processeur d'annotation qui produit des objets de valeur simples, sécurisés et cohérents.
JavaPoet --API pour générer des fichiers source.
JHipster - Générateur de code source Yeoman pour Spring Boot et AngularJS.
Joda-Beans- Un petit framework qui améliore JavaBeans en ajoutant des propriétés interrogeables à Java.
Lombok-Générateur de code visant à réduire la redondance.
Un framework utile pour créer des analyseurs, des interprètes et des compilateurs *
ANTLR - Un cadre complexe et complet pour une analyse descendante.
JFlex-Générateur d'analyse de phrases.
Bibliothèque qui fournit des paramètres externes *
centraldogma - Dernière bibliothèque de configuration pour les applications distribuées écrites en Java.
cfg4j - Référentiel de configuration du service de gestion de version hautement disponible basé sur Git, ZooKeeper, HTTP / 2.
config - Bibliothèque de configuration pour le langage JVM.
dotenv - Une bibliothèque de configuration à 12 éléments pour Java.
ini4j- Fournit une API pour le traitement des fichiers INI sous Windows.
KAConf - Système de configuration basé sur l'annotation pour Java et Kotlin.
propriétaire-Réduire le passe-partout de la propriété.
Une bibliothèque pour aider à implémenter les problèmes d'optimisation et de suffisance *
Choco -Utilisation de techniques de programmation par contraintes, résolution de problèmes de réalisation de contraintes.
JaCoP-Inclut une interface pour le langage FlatZinc, vous permettant d'exécuter des modèles MiniZinc. (AGPL-3.0)
OptaPlanner-Business Planning and Resource Scheduling Optimization Solver.
CSV
Frameworks et bibliothèques qui simplifient la lecture et l'écriture de données CSV *
jackson-dataformat-csv --Lecteur et rédacteur pour les extensions Jsckson.
opencsv - Analyseur CSV simple.
Super CSV- Un analyseur CSV puissant qui prend en charge Dozer, Joda-Time et Java 8.
uniVocity-parsers - L'un des analyseurs CSV les plus rapides et les plus riches en fonctionnalités. Il est également livré avec un analyseur TSV et un analyseur d'enregistrement à largeur fixe. Masu.
Simplifiez l'interaction avec la base de données *
Apache Drill - Schéma distribué à la volée Moteur de requête ANSI SQL pour l'exploration du Big Data
Apache Phoenix - Couche de base de données relationnelle hautes performances sur HBase pour les applications à faible latence.
AranoDB - Pilote Java ArangoDB.
Carte de la chronique - Magasin de valeurs-clés hors tas en mémoire (toujours stocké sur le disque).
druid-Haute performance, orienté colonne, magasin de données distribué.
eXist-NoSQL Document Database and Application Platform. (LGPL-2.1 uniquement)
FlexyPool (https://github.com/vladmihalcea/flexy-pool) - Apporte les métriques et les stratégies de basculement aux solutions de regroupement de connexions les plus courantes.
Flyway-Un outil de migration de base de données simple.
H2- Petite base de données SQL avec des fonctionnalités en mémoire.
HikariCP - Pool de connexions JDBC hautes performances.
jasync-sql - Pilote de base de données asynchrone pour MySQL et PostgresSQL.
JDBI - Une abstraction pratique de JDBC.
Jedis - Méthodes pour les commandes et un petit client pour interagir avec Redis.
Jest - Client API REST d'Elasticsearch.
jetcd - bibliothèque cliente.
Jinq-Type-safe référence de base de données via l'exécution symbolique de Java 8 Lambdas (au-dessus de JPA ou jOOQ).
jOOQ-Générer du code de type garanti basé sur le schéma SQL.
Liquibase - Une bibliothèque indépendante de la base de données pour le suivi, la gestion et l'application des changements de schéma de base de données.
MapDB-Built-in moteur de base de données qui fournit des collections parallèles sauvegardées sur disque ou en mémoire hors tas.
MariaDB4j-MariaDB lanceur qui ne nécessite pas d'installation ou de dépendances externes.
OrientDB - Base de données distribuée Embedtable écrite sur Hazlcast.
Presto - Moteur de requête SQL distribué pour les données volumineuses.
Querydsl - Requête unifiée de type sécurisé.
Realm - Une base de données mobile qui s'exécute directement sur votre téléphone, tablette ou portable.
Redisson - Active des structures de données distribuées et évolutives au-dessus du serveur Redis.
requery-Mappage d'objets et générateur SQL modernes, légers mais puissants. Et effectuez des mises à jour.
Speedment - Une bibliothèque d'accès à la base de données qui utilise l'API Java 8 Stream pour les requêtes.
sql2o-Un wrapper JDBC fin qui simplifie l'accès à la base de données et facilite le mappage des ResultSets aux POJO.
Vibur DBCP-JJJ bibliothèque de pool de connexions qui fournit une surveillance avancée des performances.
Xodus-Parallel transaction schemaless et base de données intégrée compatible ACID.
Structure de données efficace et concrète *
Apache Avro- Formats d'échange de données tels que le typage dynamique, les données non marquées, le manque d'identifiants attribués manuellement.
Apache Orc-Format de stockage en colonnes rapide et efficace pour les charges de travail basées sur Hadoop.
Apache Parquet - Un format de stockage en colonnes basé sur l'algorithme d'assemblage du papier Dremel de Google
Apache Thrift-Format d'échange de données développé par Facebook.
Big Queue - Une grande file d'attente rapide et persistante basée sur des fichiers mappés en mémoire.
HyperMinHash-java - Structure de données probabiliste pour le calcul des sommes, des ensembles de produits et des bases de définition dans l'espace loglog.
Persistent Collection- Framework Java Collections permanent et immuable.
Protobuf-Format d'échange de données de Google.
SBE-Codage binaire simple. Un des formats de message les plus rapides.
Tape-Ultra-fast, transactionnel, FIFO basé sur des fichiers.
Wire- Tampon de protocole propre et léger.
Bibliothèque qui gère la date et l'heure *
Almanac Converter - Convertissez facilement entre différents systèmes de calendrier.
iCal4j --iCalendar RFC 5545 Analyse et construction de modules de données.
ThreeTen-Extra - Classes de date et d'heure supplémentaires qui complètent celles du JDK 8.
Time4J - Bibliothèque de date et d'heure avancée. (LGPL-2.1 uniquement)
Une bibliothèque qui aide à implémenter le paradigme Inversion of Control *
Apache DeltaSpike - Cadre d'extension CDI.
Dagger2-Pas de réflexion, framework d'injection à la compilation.
Feather-Ultralight, bibliothèque d'injection de dépendances conforme JSR-330.
Guice - Un cadre léger mais puissant qui complète Dagger.
HK2 - Framework d'injection de dépendances léger et dynamique.
JayWire - Framework d'injection dépendant léger.
Renforcement du processus de développement au niveau de base *
AspectJ- Extension de programmation orientée aspect transparente.
DCEVM-JVM changements qui permettent une redéfinition illimitée des classes chargées à l'exécution.
Faux Pas - Gestion des erreurs, évitant le problème qu'aucune des interfaces fonctionnelles Java Runtime ne peut lancer d'exceptions vérifiées par défaut. Une bibliothèque qui simplifie.
HotswapAgent - Redéfinition illimitée des classes d'exécution et des ressources.
JavaParser-Dynamicly analyse, modifie et génère du code Java.
JavaSymbolSolver-Symbol solver pour Java.
JRebel![C]-Rechargez immédiatement le code et les modifications de configuration sans redéployer.
Manifold - Un fichier jar unique qui réactive Java avec des fonctionnalités puissantes telles que la métaprogrammation de type sécurisé, le typage structurel et les méthodes d'extension.
NoException-Autorise les exceptions vérifiées dans l'interface fonctionnelle et convertit les exceptions en retours facultatifs.
SneakyThrow - Aucune manipulation de code d'octet, ignore les exceptions vérifiées. Peut également être utilisé dans la manipulation de flux Java 8.
Bibliothèques et frameworks pour créer des applications distribuées et tolérantes aux pannes *
Apache Geode-In-memory système de gestion de données qui fournit une notification d'événements asynchrones fiable et une livraison de message garantie.
Apache Storm-Système informatique en temps réel.
Apache ZooKeeper - Services de configuration, de synchronisation et de coordination de noms de registre distribués pour les grands systèmes distribués.
Atomix --Fault Tolerant Distributed Cooperative Framework.
Axon Framework-Framework pour créer des applications CQRS.
Disjoncteur Dropwizard - Modèle de conception de disjoncteur Dropwizard.
Failsafe - Gestion facile des pannes avec des tentatives et des disjoncteurs.
Hazelcast![C]- Grille de données en mémoire évolutive avec version open source gratuite.
JGroups - Une boîte à outils pour une messagerie et un clustering fiables.
Orbit - Acteur virtuel. Ajoute un autre niveau d'abstraction aux acteurs traditionnels.
Quasar- Fils et acteurs légers pour JVM.
resilience4j - Bibliothèque fonctionnelle de tolérance aux pannes.
ScaleCube - Cluster intégré - Bibliothèque de membres basée sur SWIM et protocole de potins.
Zuul- Service de passerelle qui fournit un routage dynamique, une surveillance, une résilience, une sécurité et plus encore.
Les transactions distribuées fournissent un mécanisme pour assurer des mises à jour cohérentes des données en cas d'accès simultané et de pannes partielles. *
Atomikos - Fournit des transactions REST, SOA et microservices qui prennent en charge JTA et XA.
Bitronix- Implémentation simple et complète de l'API JTA 1.1.
Narayana -Prend en charge l'ACID traditionnel et les transactions et est conforme aux normes JTA, JTS et autres.
Un outil pour gérer la distribution d'applications de style natif *
Bintray![C]- Contrôle de version des binaires qui gèrent la publication. Il peut également être utilisé avec Maven et Gradle, les logiciels open source et certains plans d'affaires. Il existe un plan gratuit pour.
Boxfuse![C] -Déployez des applications JVM sur AWS en utilisant les principes de l'infrastructure immuable.
Capsule- Empaquetage et déploiement simples et puissants. Prend en charge les conteneurs optimisés pour JVM, "Docker for Java".
Référentiel central (https://search.maven.org/) - Le plus grand référentiel de composants binaires disponible en tant que service gratuit pour la communauté open source. Utilisé par Apache Maven et disponible dans tous les autres outils de compilation Défaut.
Cloudsmith![C] -Entièrement géré, gestion des paquets SaaS avec prise en charge Maven / Gradle / SBT.
IzPack- Outil de création de configuration pour les environnements multiplateformes.
JitPack![C]-Easy-to-use package repository for GitHub. Construisez des projets Maven / Gradle à la demande et publiez des packages prêts à l'emploi.
Nexus![C]- Gestion binaire avec des capacités de proxy et de mise en cache.
packr-Packs JAR, actifs et JVM sous Windows, Linux, Mac OS X pour une distribution native.
really-executable-jars-maven-plugin - Un plugin Maven pour créer des JAR auto-exécutables.
Une bibliothèque qui prend en charge le traitement des formats de documents bureautiques *
Apache POI- Prend en charge OOXML (XLSX, DOCX, PPTX) et OLE2 (XLS, DOC ou PPT).
documents4j --API pour la conversion de format de document à l'aide d'un convertisseur tiers tel que MS Word.
docx4j-Création et manipulation de fichiers Microsoft Open XML.
XlsMapper - Lecture / écriture de fichiers Excel. De plus, le mappage vers Java Beans est possible.
zerocell - Une API basée sur les annotations pour charger des données de feuilles Excel dans POJO avec un accent sur la réduction des frais généraux.
Outils de méthode formelle: assistant de certification, vérification de modèle, exécution symbolique, etc. *
CATG --Moteur de test unitaire concolique.Génère automatiquement des tests unitaires en utilisant des méthodes formelles.
Checker Framework - Système de type enfichable. Inclut le type de nullité, l'unité physique, le type immuable, etc.
Daikon-Daikon peut détecter l'immuabilité du programme et générer des spécifications JML basées sur cette immuabilité.
Java Path Finder (JPF) --JVM outil de vérification formelle comprenant un vérificateur de modèle, etc. Créé par la NASA.
JMLOK 2.0 - La génération de tests aléatoires orientés retour détecte les non-conformités entre le code et les spécifications JML, et chaque non-conformité détectée Voici quelques causes possibles:
KeY - Le système KeY vise à intégrer la conception, la mise en œuvre, les spécifications formelles et la vérification formelle des logiciels orientés objet de manière aussi transparente que possible, des logiciels formels. Un outil de développement qui utilise JML pour la validation et l'exécution symbolique.
OpenJML - Convertit la spécification JML au format SMT-LIB et transmet le problème de preuve impliqué par le programme au solveur principal.
Bibliothèque qui facilite la programmation des fonctions *
cyclops-react - Utilitaires Monad et Stream, description, correspondance de motifs, toutes les améliorations de la collection JDK, trampoline, etc.
derive4j- Processeur d'annotations Java 8 et framework pour dériver des constructeurs de type de données algébriques, correspondance de modèles, morphs.
Fugue - Améliorations de Guava.
Java fonctionnel -Implémente un certain nombre d'abstractions de programmation de base et avancées qui prennent en charge le développement orienté composition.
jOOλ- Extension Java 8 visant à corriger les lacunes lambda. De nombreux types manquants et un riche ensemble d'API Stream Fournit des fonctionnalités supplémentaires.
protonpack - Une collection d'utilitaires de flux.
StreamEx --Etend les flux Java 8.
Vavr - Une bibliothèque de composants fonctionnels qui fournit des types de données persistantes et des structures de contrôle fonctionnelles.
Cadre pour soutenir le développement de jeux *
jMonkeyEngine - Un moteur de jeu pour le développement de jeux 3D modernes.
libGDX-All-round cross-platform, framework de haut niveau.
LWJGL - Un framework puissant pour l'abstraction de bibliothèques comme OpenGL / CL / AL.
FXGL - Framework de développement de jeux Java FX.
Bibliothèque de données géospatiales et d'algorithmes *
Apache SIS-Une bibliothèque pour le développement d'applications géospatiales.
Geo - Utilitaire GeoHash.
Geotoolkit.org-Une bibliothèque pour le développement d'applications spatiales. Construit au-dessus du projet Apache SIS.
GeoTools - Une bibliothèque qui fournit des outils pour les données géospatiales.
GraphHopper - Charger le moteur de routage. Utilisé comme bibliothèque Java ou service Web autonome.
H2GIS - Extension spatiale de la base de données H2.
Jgeohash-Une bibliothèque pour aider les développeurs Java à utiliser l'algorithme GeoHash.
Mapsforge - Logiciel de rendu de carte basé sur les données OpenStreetMap.
Spatial4j - Une bibliothèque Java open source générique avec une licence ASL spatiale / géospatiale.
GUI
Bibliothèque pour créer des interfaces utilisateur graphiques modernes *
JavaFX - Succès de Swing.
Scene Builder- Outil de mise en page visuelle pour les applications JavaFX.
SWT-Standard Widget Toolkit (SWT) est une boîte à outils de widgets graphiques à utiliser avec la plate-forme Java.
Tout sur le calcul haute performance, des collections aux bibliothèques spécifiques *
Agrona - Structures de données et méthodes utilitaires courantes dans les applications hautes performances.
Disruptor-Inter-thread bibliothèque de messagerie.
Collections Eclipse - Framework de collection inspiré de Smalltalk.
fastutil-Collection spécifique à un type rapide et compacte.
HPPC- Collection primitive.
JCTools-Outils parallèles introuvables dans le JDK actuel.
Koloboke -Hashsets et hashmaps.
Une bibliothèque qui vous aide à créer des requêtes HTTP et / ou à combiner des réponses *
Armeria- Bibliothèque client / serveur RPC / REST asynchrone basée sur Java 8, Netty, HTTP / 2, Thrift et gRPC.
Client Http Async- Bibliothèque cliente HTTP asynchrone et websocket.
Feign --Retrofit, JAXRS-2.0 et bibliothèque de classeurs client HTTP inspirée de WebSocket.
OkHttp Client HTTP + SPDY.
Play WS-Type-safe client avec contrainte réactive et mise en cache.
restQL-core-java - Obtenez des informations à partir de plusieurs services, langage de requête de microservice.
Retrofit-Type-safe client REST.
Ribbon-Client-side IPC library.
Riptide - Routage de la réponse côté client pour Spring RestTemplate.
unirest-java - Bibliothèque client HTTP simple et légère.
Une bibliothèque qui gère la sérialisation vers les types hypermédia *
JSON-LD - Implémentation JSON-LD.
Siren4J - Bibliothèque de spécifications Siren.
IDE
Environnement de développement intégré qui simplifie le développement *
Eclipse - Projet open source qui prend en charge de nombreux plugins et langages.
IntelliJ IDEA![C]- Prend en charge de nombreux langages JVM et offre des options adaptées au développement Android.
NetBeans (https://netbeans.apache.org/)- Fournit l'intégration des fonctionnalités Java SE et EE de l'accès à la base de données vers HTML5.
Visual Studio Code (https://code.visualstudio.com/docs/languages/java) - Utilise les extensions Marketplace pour fournir une prise en charge Java pour des flux de travail simples et modernes.
Une bibliothèque qui prend en charge la création, l'évaluation et l'exploitation d'images graphiques *
Imgscalr - Une bibliothèque simple et efficace de mise à l'échelle d'image accélérée par le matériel implémentée en pur Java 2D.
Tess4J - wrapper JNA pour l'API Tesseract OCR.
Thumbnailator --Thumbnailator est une bibliothèque de génération de vignettes de haute qualité pour Java.
TwelveMonkeys - Une collection de plugins qui étendent le nombre de formats de fichiers image pris en charge.
ZXing - Bibliothèque de traitement d'images de codes à barres 1D / 2D multi-format.
comparaison d'images-Comparez deux images de même taille et dessinez un rectangle pour montrer la différence visuelle.
JSON
Une bibliothèque pour sérialiser et désérialiser JSON avec des objets Java *
Genson-Une bibliothèque de conversion Java vers JSON puissante et facile à utiliser.
Gson-Serialize objets en JSON et vice versa.
HikariJSON - Un analyseur JSON haute performance qui est deux fois plus rapide que Jackson.
jackson-modules-java8 - Un ensemble de modules Jackson pour les types de données et fonctionnalités Java 8.
Jackson-datatype-money - Module Jackson open source qui prend en charge la sérialisation et la désérialisation JSON des types de données JavaMoney.
Jackson - Similaire à GSON, mais avec de meilleures performances si vous avez besoin d'instancier la bibliothèque plus souvent.
JSON-io --Convertissez Java en JSON, Convertissez JSON en Java.
jsoniter -Une bibliothèque rapide et flexible avec des itérateurs et des API d'analyse de retard.
LoganSquare - Bibliothèque d'analyse et de sérialisation JSON basée sur l'API de streaming de Jackson. Mieux que la bibliothèque de GSON & Jackson.
Moshi - Bibliothèque JSON moderne. Utilisez des types intégrés tels que des listes et des cartes.
Yasson - Lie les couches entre les classes et les documents JSON comme JAXB.
Bibliothèque de traitement des données au format JSON *
fastjson - Un processeur très rapide sans dépendances supplémentaires ni liaison de données complète.
Jolt - Outil de conversion JSON en JSON.
JsonPath - Extrait les données de JSON en utilisant une syntaxe telle que XPATH.
JsonSurfer - Un processeur JsonPath de streaming dédié au traitement de données JSON volumineuses et complexes.
Implémentation actuelle de JVM / JDK *
Adoptez Open JDK - Build OpenJDK qui vous permet de choisir entre HotSpot et OpenJ9.
Avian --JVM avec les modes JIT et AOT. Contient des ports iOS.
Corretto - Distribution gratuite d'OpenJDK pour multi-plateforme et production par Amazon.
Graal-Polyglot intégrable JVM.
Liberica JDK - Fabriqué à partir d'OpenJDK, soigneusement testé et réussi JCK.
OpenJ9 - Calibre d'entreprise, machine virtuelle Java multi-plateforme sous licence flexible et gérée de manière ouverte, technologie d'exécution d'Eclipse OMR et projets OpenJDK Étendez le composant.
OpenJDK - Implémentation open source pour Linux.
ParparVM --VM avec GC parallèle non bloquant pour iOS.
RedHat Open JDK - Distribution d'OpenJDK par RedHat.
Zulu --OpenJDK pour Windows, Linux et macOS.
Bibliothèque qui enregistre le comportement de l'application *
Apache Log4j 2 - Plug-in puissant et architecture de configuration.
Graylog - Agrégateur open source adapté aux rôles étendus et à la gestion des privilèges.
Kibana-Analyse et visualise les fichiers journaux. Certaines fonctionnalités sont payantes.
Logback - Bibliothèque de journalisation robuste avec des options de configuration intéressantes via Groovy.
Logbook - Bibliothèque open source extensible pour la journalisation des requêtes et réponses HTTP.
Logstash - Un outil de gestion des fichiers journaux.
p6spy - Activez la journalisation de toutes les transactions JDBC sans changer de code.
SLF4J-Couche abstraite utilisée dans l'implémentation.
tinylog- Framework de journalisation léger avec des classes de journalisation statique.
Tracer - Appelle la corrélation trace-log dans un système distribué.
Un outil qui fournit des algorithmes statistiques spécifiques qui permettent l'apprentissage automatique *
Apache Flink - Un moteur de traitement de données à grande échelle rapide et fiable.
Apache Mahout - Un algorithme évolutif axé sur le co-filtrage, le clustering et la classification.
Apache Spark-Data Analysis Cluster Computing Framework.
DatumBox -Fournit plusieurs algorithmes pour le traitement du langage naturel et des modèles pré-entraînés.
DeepDive -Créez des informations structurées à partir de données non structurées et intégrez-les dans une base de données existante.
Deeplearning4j- Bibliothèque d'apprentissage en profondeur multithread distribuée.
H2O - Moteur d'analyse statistique pour données à grande échelle.
JSAT - Un algorithme pour le prétraitement, la classification, la régression et le clustering avec prise en charge de l'exécution multithread.
Oryx 2 - Pour créer des applications d'apprentissage automatique en temps réel à grande échelle, y compris des applications de bout en bout pour le filtrage, la classification, la régression et le clustering collaboratifs. Cadre.
Smile --Statistical Machine Intelligence and Learning Engine fournit un ensemble d'algorithmes d'apprentissage automatique et de bibliothèques de visualisation.
Weka - Une collection d'algorithmes pour les tâches d'exploration de données, du prétraitement à la visualisation.
Un outil qui permet d'envoyer des messages entre clients pour assurer l'indépendance du protocole *
Aeron - Transfert de messages unicast et multicast efficace et fiable.
Apache ActiveMQ - Un courtier de messages qui implémente JMS et convertit la synchronisation en communication asynchrone.
Apache Camel- Apporte différentes API de transport via un modèle d'intégration d'entreprise.
Apache Kafka- Système de messagerie distribué à haut débit.
Apache Pulsar- Système de messagerie distribué pub / sub.
Apache RocketMQ - Une plateforme de messagerie distribuée rapide, fiable et évolutive.
Apache Qpid --Apache Qpid parle AMQP et crée des outils de messagerie prenant en charge de nombreux langages et plates-formes.
Hermes -Un courtier de messages rapide et fiable construit sur Kafka.
EventBus-Simple bus d'événements de publication / abonnement.
JeroMQ --Mise en œuvre de ZeroMQ.
Nakadi - Fournit une API RESTful sur Kafka.
Client Java RabbitMQ - Client RabbitMQ.
Smack-Cross-platform Bibliothèque cliente XMPP.
NATS - Client NATS.
Tout le reste *
Codename One - Une solution multiplateforme pour créer des mobiles natifs.
CQEngine - Requêtes ultra-rapides de type SQL sur les collections Java.
Design Patterns- Implémentation et description des modèles de conception les plus courants.
Failsafe - Gestion facile des pannes avec des tentatives et des disjoncteurs.
FF4J - Indicateur de fonctionnalité Java.
[FizzBuzz Enterprise Edition](https://github.com/EnterpriseQualityCoding/FizzBuzzEnterprise Edition) -Une implémentation absurde de FizzBuzz faite par des hommes d'affaires sérieux à des fins commerciales sérieuses.
J2ObjC - Traducteur Java vers Objective-C pour le portage des bibliothèques Android vers iOS.
JavaCV --OpenCV, FFmpeg Autres interfaces Java.
JavaX - Réfléchissez et étendez Java en mettant l'accent sur la simplification.
JBake - Générateur de site Web statique.
JBot - Cadre pour créer des chatbots.
Jcuda -JCuda fournit des liaisons Java pour les bibliothèques associées à CUDA et CUDA.
Jimfs - Système de fichiers en mémoire.
Joda-Money- Classes et algorithmes monétaires et monétaires de base non fournis par le JDK.
JPad --Snippet Runner.
Maven Wrapper - Gradle Wrapper de Maven permet de construire des projets sans installer Maven.
Proxy de service de membrane-Open source reverse proxy framework écrit en Java.
MinimalFTP - Serveur FTP léger, compact et personnalisable.
Java moderne - Un guide de Java 8 - Un guide populaire de Java 8.
Modernizer-Détecte l'utilisation des API Java héritées.
[Moteur multi-OS]((https://multi-os-engine.org) -Moteur multiplateforme open source pour le développement d'applications mobiles natives (iOS, Android, etc.).
OpenRefine-Outils de traitement de données encombrantes. Nettoyage, transformation, extension avec services web, lien vers la base de données.
PipelinR - Une petite bibliothèque utilitaire pour utiliser des gestionnaires et des commandes dans votre pipeline.
Polyglot for Maven- Une extension de Maven 3.3.1 + qui vous permet d'écrire des modèles POM dans des dialectes autres que XML.
Smooks - Framework extensible pour la construction d'applications qui traitent des données (liaison, transformation, traitement de message, enrichissement).
Togglz- Implémentation d'un modèle de bascule fonctionnel.
TypeTools-Outils pour résoudre les types génériques.
XMLBeam - Utilisez des annotations dans votre code ou XPath pour traiter XML.
OctoLinker - Une extension de navigateur qui vous permet de naviguer plus efficacement dans le code sur GitHub.
Microservices, c'est-à-dire des outils de gestion de la création, de la coordination ou de la découverte *
Apollo-Une bibliothèque pour l'écriture de microservices configurables.
consul-api-Consul client pour les centres de données distribués et hautement disponibles Service de registre / découverte
Eureka - Registre de service basé sur REST pour l'équilibrage de charge résilient et le basculement.
Helidon --Deux approches de style pour l'écriture de microservices: Deux styles d'implémentation de Fonctionnel-réactif et MicroProfile.
Lagom - Un framework pour créer des systèmes basés sur des microservices.
Outils de suivi des applications de production *
AppDynamics![C] - Moniteur de performances.
Automon - Un outil d'intégration avec AOP pour surveiller ou enregistrer des fonctionnalités.
Failsafe Actuator - Surveillance du disjoncteur Failsafe dans l'environnement Spring-Boot.
BugSnag![C]-Surveillance des exceptions et des erreurs grâce à l'intégration de plusieurs outils tiers.
Glowroot - Open Source Java APM.
inspectIT - Obtenez des informations d'exécution détaillées via des hooks instantanément modifiables. Prend en charge le traçage sur plusieurs systèmes à l'aide de l'API OpenTracing, Vous pouvez associer des données à la surveillance de l'utilisateur final.
Instrumental![C] -Compte de développement gratuit disponible, service commercial de surveillance des performances des applications Java en temps réel.
JavaMelody - Surveillance et profilage des performances.
Client Jaeger - Client Jaeger.
jmxtrans- Un outil pour se connecter à plusieurs JVM et interroger leurs attributs via JMX. Les requêtes permettent aux programmeurs non Java d'accéder aux attributs JVM. Il est basé sur JSON pour pouvoir être utilisé. Il prend également en charge diverses entrées et sorties telles que Graphite, Ganglia et StatsD.
Jolokia --REST JMX.
Kamon![C] -Un outil pour surveiller les applications exécutées sur la JVM.
Métriques (http://metrics.dropwizard.io/) - Vous pouvez publier des métriques via MX ou HTTP et les envoyer à la base de données.
Nouvelle relique![C] - Moniteur de performances.
Datadog![C]-Surveillance et analyse modernes.
nudge4j - Console de développement à distance pour Java 8 via l'injection de bytecode depuis le navigateur.
OverOps![C]-Surveillance et débogage des erreurs en temps réel.
Pinpoint - Outil APM open source.
Prometheus- Fournit des modèles de données multidimensionnels, des DSL, des nœuds de serveur autonomes et plus encore.
SPM![C]- Moniteur de performances qui distribue les traces de transaction pour les applications JVM.
Stagemonitor - Surveillance des performances open source et traçage des transactions pour les applications JVM.
Sysmon - Outil de surveillance de plate-forme légère pour les machines virtuelles Java.
Fonctionne avec les bibliothèques natives spécifiques à la plate-forme *
JavaCPP - Fournit un accès efficace et facile au C ++ natif.
JNA-Gérer les bibliothèques natives sans écrire JNI. Il fournit également une interface vers les bibliothèques système courantes.
JNR-Travailler avec des bibliothèques natives sans écrire JNI. Fournit également une interface vers les bibliothèques système courantes. Même objectif que JNA Cependant, il sert de base pour le futur Projet Panama.
Une bibliothèque spécialisée dans le traitement de texte *
CogCompNLP- Fournit un annotateur commun pour la saisie de texte brut.
CoreNLP-Stanford's CoreNLP fournit un ensemble d'outils de base pour des tâches telles que le marquage, la reconnaissance d'entités nommées et l'analyse des sentiments. ..
DKPro - Une collection d'outils PNL réutilisables pour le prétraitement du langage, l'apprentissage automatique, les ressources de vocabulaire, etc.
Lingua - Bibliothèque de détection de langue naturelle particulièrement adaptée aux courts paragraphes de texte.
LingPipe-Toolkit pour diverses tâches allant du marquage POS à l'analyse des sentiments.
Bibliothèque pour la programmation réseau *
AkkaGRPC - Prise en charge de la création de serveurs et de clients gRPC en continu au-dessus d'Akka Streams.
Comsat - Intègre les API Java Web standard dans la fibre Quasar et les acteurs.
Dubbo - Framework RPC hautes performances.
Finagle- Système RPC extensible utilisé pour construire des serveurs hautement parallèles.Il s'agit d'un client et serveur unifié pour plusieurs protocoles. Il implémente l'API et est indépendant du protocole, ce qui simplifie la mise en œuvre du nouveau protocole.
Grizzly - Cadre NIO. Utilisé comme couche réseau de Glassfish.
gRPC - Framework RPC basé sur protobuf et HTTP / 2.
KryoNet - Client / serveur TCP / UDP efficace avec NIO et Kryo. Fournit une API propre et simple pour la communication réseau.
MINA-Abstract API d'E / S asynchrones pilotées par les événements pour les opérations réseau TCP / IP et UDP / IP via Java NIO.
Netty - Un framework pour créer des applications réseau hautes performances.
Nifty - Implémentation du client et du serveur Thrift sur Netty.
sshj - Les programmes utilisent SSH, SCP, SFTP.
TLS Channel - Implémente l'interface ByteChannel sur SSLEngine pour un TLS facile à utiliser (de type socket).
Undertow - Un serveur Web qui fournit à la fois des API bloquantes et non bloquantes basées sur NIO. Utilisé comme couche réseau pour WildFly.
urnlib - Bibliothèque Java pour exprimer, analyser et encoder des URN, comme RFC 2141.
ORM
API pour gérer la persistance des objets *
Apache Cayenne- Fournit une API propre et statique pour l'accès aux données, y compris un modeleur d'interface graphique pour le mappage de bases de données, l'ingénierie inverse de bases de données et la génération. Il est.
Ebean- Fournit un accès aux données simple et rapide.
Doma 2 - Un cadre d'accès à la base de données qui valide et génère le code source au moment de la compilation en utilisant le traitement des annotations et un modèle SQL natif appelé "SQL bidirectionnel".
EclipseLink- Prend en charge plusieurs standards de persistance tels que JPA, JAXB, JCA, SDO.
Hibernate-Robuste et largement utilisé dans la communauté active.
MyBatis-Combinez des objets avec des procédures stockées ou des instructions SQL.
SimpleFlatMapper-Simple, base de données et mappeur CSV.
PaaS Java Platform as a Service
Utile pour créer des fichiers PDF *
Apache FOP --Créez un PDF à partir de XSL-FO.
Apache PDFBox - Une boîte à outils pour créer et manipuler des PDF.
Dynamic Jasper - Couche abstraite pour Jasper Reports.
DynamicReports - Simplifie JasperReports.
flyingsaucer --XML / XHTML et CSS 2.1 Renderer.
iText![C]- Vous pouvez créer des fichiers PDF par programmation, mais à des fins commerciales, vous avez besoin d'une licence.
JasperReports-Moteur de reporting complexe.
Ouvrir HTML en PDF - Prend correctement en charge les dernières normes PDF basées sur flyingsaucer et Apache PDFBox.
Outils d'analyse des performances, de profilage et d'analyse comparative *
fastThread![C] - Une interface de téléchargement gratuite basée sur le cloud qui analyse et visualise les décharges de threads.
GCeasy![C] -Un outil pour analyser et visualiser les journaux GC Fournit une interface de téléchargement gratuite basée sur le cloud.
Honest-profiler - Un profileur d'échantillonnage avec une faible surcharge et sans biais.
jHiccup - Enregistre et enregistre les blocages de la JVM de la plate-forme.
JITWatch --Analyser l'optimisation du compilateur JIT par la JVM HotSpot.
JMH --JMH est un nano / micro / millimètre / écrit en Java qui cible la JVM et d'autres langages. Un harnais Java pour créer, exécuter et analyser des benchmarks de macro.
JProfiler![C] --Profiler.
LatencyUtils-Utilité pour mesurer et signaler la latence.
XRebel![C]-Profiler pour les applications Web.
YourKit Java Profiler![C] --Profiler.
Apache Commons
find
.Bibliothèque pour développer des applications réactives *
Akka -Toolkits et runtimes pour créer des applications événementielles simultanées, distribuées et tolérantes aux pannes.
Reactive Streams-Fournit une norme pour le traitement de flux asynchrone avec contre-pression non bloquante.
Reactor - Une bibliothèque pour créer des applications de données réactives à haute vitesse.
vert.x- Framework applicatif événementiel de Polyglot.
Framework de création de services RESTful en particulier *
Dropwizard - Un framework pour configurer des applications Web modernes dans Jetty, Jackson, Jersey, Metrics.
Elide- Un framework d'opinion pour JSON ou GraphQL-API basé sur le modèle de données JPA.
javalin-Javalin est Jetty avec des milliers de lignes de code ajoutées: ses performances sont à peu près les mêmes que Jetty pure.
Jersey - Implémentation de référence JAX-RS.
Microserver - Système de plugins de microservices pratique et extensible pour Spring & Spring Boot. Plus de 30 plugins et extensions, micro Prend en charge les styles de microservice monolithiques et purs.
Rapidoid - Un framework simple, sécurisé et très rapide composé d'un serveur HTTP intégré, de composants GUI et d'une injection de dépendances.
rest.li - Un framework pour construire une architecture RESTful robuste et évolutive avec des liaisons de type sécurisé et des E / S asynchrones non bloquantes. Fournit un flux de travail développeur de bout en bout qui facilite les pratiques propres, la conception d'interface unifiée et la modélisation cohérente des données
RESTEasy-Une implémentation entièrement certifiée et portable de la spécification JAX-RS.
RestExpress - Un wrapper léger sur la pile HTTP JBoss Netty qui offre évolutivité et performances.
Restlet Framework- Un framework pionnier avec de puissantes capacités de routage et de filtrage, une API client et serveur intégrée.
Spark-Sinatra-inspired framework.
Crnk-JSON pour la création de points de terminaison REST orientés ressources, y compris le tri, le filtrage, la pagination, les liens, les graphiques d'objets, la sécurité des types, les mises à jour en masse, la consolidation, etc. Implémentation des spécifications API.
Bibliothèque pour le calcul scientifique, l'analyse et la visualisation *
DataMelt-Environnement pour le calcul scientifique, l'analyse des données, la visualisation des données.
Erdos - Un cadre de théorie des graphes modulaire, léger et facile.
GraphStream-Une bibliothèque pour la modélisation et l'analyse de graphes dynamiques.
JFreeChart - Bibliothèque de graphiques Swing, JavaFX et 2D à utiliser dans les applications côté serveur.
JGraphT-Graph bibliothèque qui fournit des objets et des algorithmes de théorie mathématique des graphes.
JGraphX - Interaction entre les bibliothèques de visualisation (principalement Swing) et les graphes de bord de nœud.
Mines Java Toolkit - Une bibliothèque pour les calculs géophysiques, les visualisations et l'analyse des signaux numériques.
Morpheus- Fournit une structure de données tabulaire efficace de mémoire bidimensionnelle polyvalente appelée DataFrame, efficacité pour les calculs scientifiques sur JVM Active l'analyse en mémoire.
Orson-Charts-Générer une variété de graphiques 3D qui peuvent être visualisés dans Swing et JavaFX, et exportés au format PDF, SVG, PNG, JPEG Masu.
Tablesaw - Comprend des cadres de données, des magasins de colonnes intégrés et des centaines de méthodes pour transformer, résumer ou filtrer les données.
XChart - Bibliothèque légère pour le traçage des données. De nombreux types de graphiques personnalisables sont disponibles.
Moteur qui indexe les documents pour la recherche et l'analyse *
Apache Lucene - Une bibliothèque de moteur de recherche de texte multiplateforme haute performance et complète.
Apache Solr - Un moteur de recherche d'entreprise optimisé pour un trafic intense.
Elasticsearch- Moteur de recherche en texte intégral multi-locataire distribué avec interface Web RESTful et documentation JSON sans schéma.
Indexer4j - Bibliothèque d'indexation et de recherche de texte intégral simple et légère.
Une bibliothèque qui gère la sécurité, l'authentification, l'autorisation ou la gestion de session *
Apache Shiro-Effectue l'authentification, l'autorisation, le cryptage et la gestion de session.
Bouncy Castle - Bibliothèque de cryptographie universelle Un large éventail de fonctions allant des aides de base aux fournisseurs JCA et aux opérations PGP / SMIME.
Cryptomator-Cryptage transparent multi-plateforme des fichiers côté client dans le cloud.
Hdiv- Autodéfense des applications d'exécution contre les risques de sécurité OWASP 10. Référence directe aux objets incertaine, injection SQL, script intersite (XSS), requête intersite Contrefaçon (CSRF) etc.
jjwt-JSON Web Token pour Java et Android.
Jwks RSA - Analyseur de jeu de clés Web JSON.
Kalium - Liaison aux bibliothèques de mise en réseau et de chiffrement (NaCl).
Keycloak - SSO et IDM intégrés pour les applications de navigateur et les services Web RESTful.
Keyczar - Un cadre de chiffrement facile à utiliser et sécurisé avec gestion des versions des clés.
Keywhiz - Un système de distribution et de gestion des secrets.
Nbvcxz - Estimation avancée de la force du mot de passe.
OACC- Fournit des services d'autorisation basés sur l'autorisation.
pac4j --Moteur de sécurité.
SecurityBuilder (https://github.com/tersesystems/securitybuilder) - API Fluent Builder pour les classes JCA et JSSE, en particulier les certificats X.509.
Themis-Une bibliothèque de cryptage multi-plateforme de haut niveau qui fournit un cryptage facile à utiliser pour protéger les données confidentielles. Transférer le secret sécurisé. Messagerie, stockage sécurisé des données (AES256GCM) Convient pour la création d'applications de chiffrement de bout en bout.
Tink- Fournit une API simple et sans erreur pour les tâches de chiffrement courantes.
Vault (https://www.vaultproject.io) - Protège, stocke et contrôle étroitement l'accès aux jetons, mots de passe, certificats, clés d'API et autres secrets. Baux, révocations de clés Gère le roulement de clés et l'audit. En utilisant une API unifiée, les utilisateurs peuvent accéder au magasin de clés / valeurs chiffrées pour effectuer le chiffrement du réseau en tant que service, ou AWS IAM / STS. Il peut générer des informations d'identification, des bases de données SQL / NoSQL, des certificats X.509, des informations d'identification SSH et plus encore.
Une bibliothèque qui gère la sérialisation avec une grande efficacité *
FlatBuffers - Une bibliothèque de sérialisation efficace en mémoire qui vous permet de décompresser et d'accéder aux données sérialisées sans analyse.
FST - Sérialisation de graphes d'objets hautes performances compatible JJ.
Kryo - Framework de sérialisation de graphe d'objets rapide et efficace.
MessagePack - Format de sérialisation binaire efficace.
PHP Serializer - Sérialiser les objets au format de sérialiseur PHP.
Serveur utilisé pour déployer des applications *
Apache Tomcat - Un serveur polyvalent puissant pour les servlets et les JSP.
Apache TomEE - Tomcat + Java EE.
Jetty- Léger, petit serveur, souvent inclus dans les projets.
nanohttpd- Petit serveur HTTP facile à intégrer.
WebSphere Liberty![C]- Serveur léger et modulaire développé par IBM.
WildFly - Prise en charge étendue de Java EE, anciennement connue sous le nom de JBoss, développé par Red Hat.
Un outil pour remplacer les expressions dans les modèles *
Handlebars.java- Modèle de moustache sans logique et sémantique
Jtwig - Un moteur de template modulaire, configurable et entièrement testé.
Jade4J - Implémentation de Jade.
Pebble - Inspiré de Twig, avec héritage et syntaxe facile à lire. Échappement automatique pour la sécurité, prise en charge intégrée de l'internationalisation contenue.
Rocker - Un moteur de template optimisé, efficace en mémoire et rapide qui produit des objets simples typés statiquement.
Thymeleaf - Gestion des fichiers XML courants dans le but de remplacer JSP.
BDD
Fortement influencé par DDD et OOAD, testant le processus de développement logiciel TDD. *
Cucumber - Cadre de test BDD.
Cukes-REST- Une collection d'étapes Gherkin pour les tests de service REST avec Cucumber.
J8Spec - Une bibliothèque qui permet aux tests écrits en Java de suivre le style BDD introduit par RSpec et Jasmine.
JBehave-Framework pour le développement axé sur le comportement.
JGiven - Cadre de test BDD adapté aux développeurs, compatible avec JUnit et TestNG.
Lamdba Behave - Cadre de spécification de comportement descriptif.
Serenity BDD - Bibliothèque de tests d'acceptation et de rapports automatiques qui fonctionne avec Cucumber, JBehave et JUnit pour faciliter l'écriture de spécifications exécutables de haute qualité.
Tous liés à la création et au traitement de données aléatoires. *
Beanmother --Définissez le bean à partir de l'appareil YAML.
Fixture Factory-Créez un pseudo objet à partir d'un modèle.
JFairy --Fake générateur de données.
Randomized Testing-JUnit test runners et plugins pour exécuter des tests JUnit avec pseudo-aléatoire.
Java Faker-Ruby faux port de générateur.
Fournit un environnement pour exécuter des tests pour des cas d'utilisation spécifiques. *
ArchUnit - Bibliothèque de tests d'architecture, spécification et assertion de règles d'architecture.
Apache JMeter-Tests fonctionnels et mesure des performances.
Arquillian- Plateforme d'intégration de conteneurs et de tests fonctionnels Java EE.
Citrus- Cadre de test intégré axé sur la messagerie côté client et serveur.
Gatling - Un outil de test de charge conçu pour la facilité d'utilisation, la maintenabilité et les hautes performances.
JUnit- Framework de test universel.
PIT - Un cadre de test de mutation rapide pour évaluer les capacités de détection de défaillance des suites de tests JUnit ou TestNG existantes.
Pact JVM-Consumer-led contract testing.
Bibliothèque qui fournit des correspondances personnalisées. *
AssertJ- Une assertion fluide qui améliore la lisibilité.
JSONAssert-Simplifie le test des chaînes JSON.
Truth- Cadre d'assertion et de proposition de Google.
XMLUnit - Simplifie le test de la sortie XML.
Autres, liés aux tests. *
junit-dataprovider - Un coureur de fournisseur de données comme TestNG pour JUnit.
Détecteur de mutabilité- Indique si une instance de la classe spécifiée est immuable.
raml-tester - Teste si la requête / réponse correspond à la définition RAML spécifiée.
TestContainers - Fournit des bases de données générales, des navigateurs Web Selenium ou tout autre élément pouvant être exécuté dans un conteneur Docker.
pojo-tester-Exécute automatiquement des tests pour les méthodes POJO de base.
Un outil pour se moquer des collaborateurs pour tester une unité indépendante. *
JMockit - Mock méthodes statiques, méthodes finales, etc.
Mockito-Création d'un double objet de test avec un test unitaire automatisé pour TDD ou BDD.
MockServer-Mocking du système intégré avec HTTP / S.
Moco - Un service Web concis pour les stubs et les simulacres. Duke's Choice Award 2013.
PowerMock - Permet la suppression des méthodes statiques, des constructeurs, des classes et méthodes finales, des méthodes privées et des initialiseurs statiques.
WireMock-Stub et Mock Web Services.
Bibliothèque qui fournit des fonctions utilitaires générales *
bucket4j - Bibliothèque de limitation de taux basée sur l'algorithme de token bucket.
cactoos -Une collection de primitives orientées objet.
CRaSH -Fournit un shell pour les JVM exécutant CRaSH, tels que Spring Boot.
Dex-Java / JavaFX avec un puissant ETL et une visualisation des données.
Embulk - Un chargeur de données en bloc qui prend en charge le transfert de données entre diverses bases de données, stockage, formats de fichiers et services cloud.
Gephi-Cross-platform pour visualiser et manipuler de grands réseaux de graphes.
Guava-Collection, mise en cache, prise en charge primitive, bibliothèque de concurrence, annotations communes, traitement de chaînes, E / S, etc.
JADE-Framework et environnement pour la construction et le débogage de systèmes multi-agents.
JavaVerbalExpressions - Une bibliothèque pour vous aider à créer des expressions régulières difficiles.
JGit-Lightweight, pure Java, bibliothèque de système de contrôle de version Git.
minio-java - Fournit une API simple pour accéder aux serveurs de stockage d'objets compatibles Amazon S3.
Protégé-Fournit un éditeur et un cadre ontroge pour la construction de systèmes basés sur la connaissance.
Underscore-java - Port de fonctionnalitéUnderscore.js.
Utilitaire pour aider à configurer l'environnement shell de développement et basculer entre les différentes versions de Java. *
jabba - Gestionnaire de version Java inspiré de NVM. Prend en charge Mac OS X, Linux, Windows.
jenv - Gestionnaire de versions Java inspiré de benv. Peut être configuré globalement ou par projet. Testé sur Debian et Mac OS X.
SDKMan - Gestionnaire de versions Java inspiré de RVM et rbenv. Prend en charge les plates-formes UNIX et Windows.
Bibliothèque qui analyse le contenu du site Web *
Apache Nutch- Fournit un robot d'exploration Web hautement évolutif et évolutif pour les environnements de production.
Crawler4j - Crawler Web simple et léger.
jsoup- Scrape, analyse, manipule et efface le HTML.
StormCrawler-SDK pour créer un robot d'exploration Web à faible latence et évolutif.
Cadre de gestion de la communication entre les couches d'applications Web *
Apache Tapestry - Un framework dynamique, robuste, extensible et orienté composants pour la création d'applications Web.
Apache Wicket (https://wicket.apache.org/) - Un framework d'application Web basé sur des composants similaire à Tapestry avec une interface graphique avec état.
Blade - Un cadre élégant, simple, léger et modulaire.
Bootique-Minimal framework pour les applications exécutables.
Firefly- Framework asynchrone pour le développement rapide et performant d'applications Web.
Grails- Un framework Groovy qui vise à fournir un environnement productif en donnant la priorité aux conventions sur la configuration et en supportant XML et les mix-ins.
Jooby -Un microframework évolutif, rapide et modulaire qui fournit plusieurs modèles de programmation.
Ninja - Framework Web complet.
Pippo-Structure de type Sinatra petite et hautement modulaire.
Play-Utilise des règles pour les paramètres du navigateur, le rechargement du hotcode et l'affichage des erreurs.
PrimeFaces-JSF framework qui prend en charge les versions commerciales gratuitement. Fournit des composants frontaux.
Ratpack - Un ensemble de bibliothèques rapides, efficaces, bien testées et facilitant les applications HTTP.
Takes - Un cadre Web basé sur l'opinion, construit sur le concept de véritable programmation orientée objet et d'immutabilité.
Vaadin Flow (https://vaadin.com/flow) - Un framework événementiel qui utilise des composants Web standard. Une architecture côté serveur avec Ajax côté client.
Awesome Lists
Grande liste d'écosystèmes Java / JVM *
Discussion animée *
r / java - Publication de la communauté Java.
stackoverflow-Question / Answer Platform.
VirtualJUG - Groupe d'utilisateurs Java virtuel.
Site Web génial Java (* site Web non officiel) *
A lire, livres influents *
Choses à voir et à écouter pendant la programmation *
Screencasts de Marco Behler - Screencasts pour les développeurs Java modernes.
The Java Posse - Discontinued as of 02/2015.
Recommandé à suivre, compte Twitter actif *
Adam Bien - Freelancer: Author, JavaONE Rockstar Speaker, Consultant, Java Champion.
Aleksey Shipilëv - Performance Geek, Benchmarking Tzar, Concurrency Bug Hunter.
Antonio Goncalves - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
Arun Gupta - Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase.
Brian Goetz - Java Language Architect at Oracle.
Bruno Borges - Product Manager/Java Jock at Oracle.
Ed Burns - Consulting Member of the Technical Staff at Oracle.
Eugen Paraschiv - Author of the Spring Security Course.
Heinz Kabutz - Java Champion, speaker, author of The Java Specialists' Newsletter, concurrency performance expert.
James Weaver - Java/JavaFX/IoT developer, author and speaker.
Java EE - Official Java EE Twitter account.
Java Magazine - Official Java Magazine account.
Java - Official Java Twitter account.
Javin Paul - Well-known Java blogger.
Lukas Eder-JavaChampion,speaker,JUG.chco-leader,FounderandCEODataGeekery(jOOQ).
Mario Fusco - RedHatter, JUG coordinator, frequent speaker and author.
Mark Reinhold - Chief Architect, Java Platform Group, Oracle.
Markus Eisele - Java EE evangelist, Red Hat.
Martijn Verburg - London JUG co-leader, speaker, author, Java Champion and much more.
Martin Thompson - Pasty faced performance gangster.
OpenJDK - Official OpenJDK account.
Peter Lawrey - Peter Lawrey, Java performance expert.
Reza Rahman - Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker.
Sander Mak - Java Champion, author.
Simon Maple - Java Champion, virtualJUG founder, LJC leader, RebelLabs author.
Stephen Colebourne - Java Champion, speaker.
Trisha Gee - Java Champion and speaker.
Sites utiles à lire *
Recommended Posts