17 dépôts
Frameworks specifically designed for the Java ecosystem.
Explore 17 awesome GitHub repositories matching software engineering & architecture · Java Frameworks. Refine with filters or upvote what's useful.
This project is an enterprise-grade Java framework designed for building scalable, full-stack e-commerce applications. It provides a comprehensive foundation for microservice-based distributed architectures, enabling the development of complex retail platforms that include product management, order processing, and secure user authentication. By leveraging modular service patterns and centralized API gateways, the framework supports the construction of resilient systems that decompose monolithic business logic into independent, manageable services. The platform distinguishes itself through a r
Standardizes enterprise-grade development patterns within the Java ecosystem to facilitate the creation of scalable business software.
Spring Framework is an enterprise Java framework providing a comprehensive infrastructure for building server-side applications. It functions as a dependency injection container and a Java application framework designed to support scalable backend development through modular architecture. The project provides tools for aspect-oriented programming to intercept method calls using dynamic proxies, allowing the application of cross-cutting concerns such as security and transactions. It also includes a centralized system for managing object lifecycles and coordinating component wiring by injecting
Provides a comprehensive framework for building scalable, modular server-side applications within the Java ecosystem.
Dagger is a compile-time dependency injection framework for Java and Android applications. It automates the construction and wiring of object graphs by generating static source code during the build process, which eliminates the need for reflection or runtime bytecode generation. The framework distinguishes itself by performing strict validation of the entire dependency structure before the application runs, ensuring that all required bindings are satisfied and identifying circular references early. It manages object lifecycles through scoped containers and supports lazy resolution, allowing
Constructs and validates object graphs for Java and Android applications using compile-time code generation.
Spring-analysis is a diagnostic utility designed to visualize the internal architecture and execution logic of Java applications built on the Spring Framework. It functions as a static analysis tool that parses source code to map structural relationships and component interactions without requiring the program to execute. The tool distinguishes itself by automatically extracting configuration and annotation data to identify beans and service definitions, which it then translates into visual representations of the system. By reconstructing method call hierarchies and event propagation paths, i
Provides specialized analysis of Spring-based applications to uncover structural dependencies and design flaws.
Guice is a Java dependency injection framework and component container. It automates object wiring by mapping interfaces to implementations via a central injector, removing the need for manual factory patterns and constructor calls. The framework provides specialized support for aspect-oriented programming, allowing for the interception and modification of method execution to implement shared cross-cutting concerns. It also functions as a persistence manager to coordinate transaction boundaries and manage the lifecycle of entity managers within a dependency-injected environment. Its core cap
Provides a Java-based dependency injection framework for automating object wiring.
gRPC Java is a library for building distributed systems that enables client and server applications to interact through remote procedure calls. It uses protocol buffers to define service interfaces and exchange structured data, providing a framework for connecting microservices across different environments. The framework utilizes an asynchronous networking foundation to manage concurrent connections and relies on a multiplexed binary protocol to facilitate efficient data exchange. It supports pluggable transport interceptors, allowing for the injection of custom logic into the request-respon
A high-performance Java library for building distributed systems using protocol buffers.
Midscene is a multimodal automation framework designed to enable AI agents to perceive, navigate, and manipulate graphical user interfaces across web, mobile, and desktop environments. By leveraging vision-capable AI models, the platform interprets interface screenshots to execute tasks based on natural language instructions, removing the reliance on traditional, brittle code-based selectors. The framework distinguishes itself through its ability to decompose high-level goals into autonomous, multi-step sequences that function consistently across diverse platforms. It provides a visual ground
Provides native interfaces for JVM-based applications to utilize vision-driven automation.
Activiti is a workflow engine designed to model, execute, and manage business processes using the BPMN 2.0 standard. It functions as a Java-based framework that embeds process orchestration directly into enterprise applications and microservices to coordinate sequences of tasks and human-centric interactions. The platform utilizes a persistent state machine to maintain the status of long-running workflows in a relational database, ensuring continuity across system restarts. It manages high-volume environments through optimistic concurrency control, which tracks versioning tokens to prevent da
Provides a lightweight Java framework for embedding business logic and task automation directly into enterprise applications.
Dagger is a compile-time dependency injection framework for Java and Android that automates object creation and lifecycle management. It functions as a static dependency injector and graph validator, resolving object requirements during the build process to avoid runtime reflection and prevent crashes caused by missing bindings. The framework distinguishes itself by using static analysis and code generation to produce factory classes at build time. It employs qualifier-based type differentiation to manage multiple implementations of the same type and provides scope-based lifecycle management
Implements a Java-based dependency injection framework that uses compile-time code generation instead of reflection.
Quartz is a Java job scheduling framework and task execution engine designed to manage and execute scheduled tasks within application environments. It functions as an enterprise job scheduler that persists job state and execution history to maintain reliability across system restarts. The system distinguishes itself through a decoupled architecture that separates the definition of a job's action from the trigger logic that determines when it runs. It supports distributed task coordination across multiple server nodes to provide high availability and load balancing. The framework covers a bro
Provides a comprehensive Java framework for managing and executing scheduled tasks with complex intervals.
This project is a curated library of technical ebooks and guides focused on Java language learning, backend architecture, and Java Virtual Machine internals. It serves as a reference-driven knowledge base and a technical repository for software engineering principles. The collection provides specialized materials for studying Java backend architecture, including high-performance server-side development and concurrency. It includes a dedicated JVM technical reference for performance tuning and internal machine behavior, as well as resources for algorithm study and data structures. Additional
Offers resources for researching server-side frameworks and distributed system design specifically for Java applications.
u2020 is an example Android application that demonstrates how to wire together application components using compile-time dependency injection, annotation-driven view binding, and a slide-out debug drawer. The project serves as a real-world showcase for integrating Dagger for dependency injection and Butter Knife for view binding, both of which generate code at compile time rather than relying on runtime reflection. The application features an in-memory mock server that simulates backend responses using static data, enabling development and testing without a live network. A debug drawer overla
Injects Android resource values like strings, colors, dimensions, and drawables directly into annotated fields.
Ce projet est un système de gestion e-commerce basé sur Java et une suite de projets éducatifs. Il sert de framework back-end pour construire des plateformes d'achat en ligne, utilisant une architecture modèle-vue-contrôleur pour découpler les interfaces utilisateur de la logique métier et des modèles de données. Le système implémente un framework d'application web structuré qui intègre des bases de données relationnelles pour suivre les inventaires de produits, les comptes utilisateur et les transactions d'achat des clients. Il dispose d'une architecture en couches qui sépare la présentation, la logique métier et l'accès aux données. La base de code couvre plusieurs domaines de capacités de base, notamment la gestion des stocks de détail, le traitement des ventes pour les transactions clients et le contrôle d'accès en entreprise. La sécurité est gérée par un contrôle d'accès basé sur des filtres et une gestion d'état basée sur les sessions pour protéger les modules d'application sensibles. La persistance des données est gérée par des bases de données relationnelles SQL et le mappage objet-relationnel pour standardiser la manière dont les données d'application sont accédées et récupérées.
Implements a structured Java backend framework with layered architecture and session management.
Ce projet est une collection d'implémentations de référence et de guides pratiques pour construire des applications Java d'entreprise avec le framework Spring Boot. Il sert de galerie de projets backend et de guide d'implémentation, fournissant un ensemble d'architectures pour les patterns serveurs courants. Le dépôt se distingue par son focus sur la conception de systèmes distribués, offrant des exemples pour la génération d'identifiants uniques globaux, le cache distribué et la recherche plein texte. Il inclut également des templates et des exemples pour créer des starters Spring Boot personnalisés afin d'encapsuler les dépendances et configurations partagées dans des modules réutilisables. Le projet couvre un large éventail de domaines, incluant la sécurité applicative via l'authentification et l'autorisation par jetons, l'observabilité système via le monitoring de santé et de performance, et l'intégration de bases de données relationnelles. Il couvre également le déploiement d'applications conteneurisées et le traitement de données multimédias et en langage naturel.
Implements common Java backend architectures such as relational mapping and distributed ID generation.
ow is a type-safe schema validation library for TypeScript that verifies data integrity at runtime. It functions as a runtime validation framework and type guard utility, ensuring that JavaScript values match expected types and schemas before they are processed. The library synchronizes runtime data checks with static TypeScript type definitions, allowing users to extract type definitions directly from validation predicates. This integration enables type narrowing, where a successful validation result refines the variable type for safer usage in the code. The framework uses a chainable API t
Uses a chainable, fluent API to build complex verification logic for function arguments and object shapes.
Ebean est un framework de mappage objet-relationnel Java conçu pour simplifier la persistance des bases de données grâce à la génération automatique de requêtes, la migration de schéma et la gestion des transactions. Il utilise le mappage piloté par les métadonnées et l'amélioration du bytecode pour combler le fossé entre les objets d'application et les tables de base de données relationnelles, fournissant une couche persistante qui gère les interactions de données complexes tout en maintenant la cohérence à travers les limites de l'unité de travail. Le framework se distingue par son accent sur la productivité des développeurs et l'optimisation des performances. Il fournit des constructeurs de requêtes typés qui génèrent du code au moment de la compilation, permettant l'auto-complétion IDE et la validation statique des opérations de base de données. De plus, il inclut une prise en charge intégrée pour les tests basés sur des conteneurs, permettant aux développeurs de gérer des instances de base de données éphémères et d'automatiser l'initialisation du schéma directement au sein de leurs suites de tests. Au-delà du mappage fondamental, le projet offre une suite complète d'outils pour la gestion des données et l'observabilité. Cela inclut l'évolution automatique du schéma, le routage des répliques de lecture pour la gestion des connexions et la mise en cache multi-niveaux pour réduire la charge de la base de données. Il fournit également des capacités de diagnostic telles que la capture du plan d'exécution des requêtes et le traçage distribué pour aider à l'optimisation des performances. La bibliothèque prend en charge les flux de travail de déploiement modernes, y compris la compilation « ahead-of-time » pour les images natives afin d'éliminer la surcharge de réflexion à l'exécution. Elle est distribuée sous forme de bibliothèque Java standard, avec une documentation et des outils disponibles pour soutenir l'intégration dans les processus de construction existants.
Provides a persistence layer that maps objects to relational databases while automating query generation and schema migration.
Fluent-validator est un framework de validation Java conçu pour appliquer l'intégrité des données via des contraintes déclaratives et des vérifications automatisées au niveau de la couche de service. Il fournit un environnement structuré pour définir une logique de validation qui s'intègre avec la spécification JSR 303, permettant aux développeurs de maintenir une qualité de données cohérente à travers des hiérarchies d'objets complexes et des limites d'application. Le framework se distingue par une interface fluide qui permet l'orchestration de chaînes de validation, permettant des séquences de règles lisibles et maintenables. Il prend en charge un contrôle d'exécution avancé, y compris la capacité de basculer entre des stratégies d'échec rapide et de basculement, et utilise une interception basée sur proxy pour vérifier automatiquement les arguments de méthode au sein des conteneurs gérés. Au-delà de l'intégration de contraintes standards, la bibliothèque facilite une intégrité profonde des données via le parcours récursif de graphes d'objets et la validation en cascade. Elle s'adapte aux exigences commerciales dynamiques en prenant en charge la logique conditionnelle, les groupes de validation pour la résolution de règles sensible au contexte et l'injection de propriétés externes dans la portée de validation. Les développeurs peuvent également implémenter des classes de validation personnalisées pour gérer des exigences de données uniques aux côtés des annotations standards.
Implements a fluent interface for orchestrating complex validation chains and JSR 303-compliant data integrity checks.