awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Java ORM Libraries

Ranking updated Jul 13, 2026

For an object relational mapping library for Java, the strongest matches are hibernate/hibernate-orm (Hibernate is the industry-standard Java ORM framework that provides), ebean-orm/ebean (Ebean is a comprehensive Java ORM framework that provides) and spring-projects/spring-data-jpa (This framework provides a comprehensive abstraction layer over JPA). mybatis/mybatis-3 and greenrobot/greendao round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

We curate open-source GitHub repositories matching “best java orm libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Java ORM Libraries

Find the best repos with AI.We'll search the best matching repositories with AI.
  • hibernate/hibernate-ormhibernate avatar

    hibernate/hibernate-orm

    6,447View on GitHub↗

    Hibernate ORM is a Java object-relational mapper and a full implementation of the Jakarta Persistence API. It serves as a SQL database abstraction layer that translates Java object models into relational database schemas to manage data persistence and lifecycles. The framework distinguishes itself with a multi-tenant data isolation framework for separating customer data within a single database instance. It also features a database schema generator that automatically produces and updates relational structures based on entity mappings. The system covers broad capability areas including transa

    Hibernate is the industry-standard Java ORM framework that provides a comprehensive implementation of the Jakarta Persistence API, including all requested features like transaction management, caching, and schema generation.

    JavaDatabase Abstraction LayersDatabase Transaction ManagementLazy Loading Patterns
    View on GitHub↗6,447
  • ebean-orm/ebeanebean-orm avatar

    ebean-orm/ebean

    1,523View on GitHub↗

    Ebean is a Java object-relational mapping framework designed to simplify database persistence through automated query generation, schema migration, and transaction management. It uses metadata-driven mapping and bytecode enhancement to bridge the gap between application objects and relational database tables, providing a persistent layer that handles complex data interactions while maintaining consistency across unit-of-work boundaries. The framework distinguishes itself through its focus on developer productivity and performance optimization. It provides type-safe query builders that generat

    Ebean is a comprehensive Java ORM framework that provides database abstraction, transaction management, lazy loading, and schema migration, serving as a direct alternative to JPA-based solutions.

    JavaDatabase Transaction ManagementTransaction ManagementDatabase Schema Migrations
    View on GitHub↗1,523
  • spring-projects/spring-data-jpaspring-projects avatar

    spring-projects/spring-data-jpa

    3,265View on GitHub↗

    Simplifies the development of creating a JPA-based data access layer.

    This framework provides a comprehensive abstraction layer over JPA, offering robust support for transaction management, caching, and simplified data access patterns that align perfectly with your requirements.

    JavaObject Relational Mapping
    View on GitHub↗3,265
  • mybatis/mybatis-3mybatis avatar

    mybatis/mybatis-3

    20,385View on GitHub↗

    MyBatis is a Java persistence framework that functions as a database query mapper and object-relational mapping tool. It decouples SQL statements from application code, allowing developers to manage database interactions by mapping Java objects to relational database records. The framework provides a centralized approach to SQL query management, enabling the use of either XML configuration files or annotations to define persistence logic. It automates the transformation of database result sets into structured objects, which eliminates the need for manual data conversion and reduces repetitive

    MyBatis is a well-established Java persistence framework that provides robust database abstraction and object-relational mapping, though it differs from JPA-compliant frameworks by focusing on SQL-centric mapping rather than full entity-manager automation.

    JavaObject-Relational MappingSQL Persistence FrameworksDatabase Query Interfaces
    View on GitHub↗20,385
  • greenrobot/greendaogreenrobot avatar

    greenrobot/greenDAO

    12,590View on GitHub↗

    greenDAO is an object-relational mapping library for Android that maps Java objects to SQLite databases. It provides infrastructure for high-performance data persistence by translating data objects into database records and vice versa. The library implements a type-safe query builder for retrieving records across multiple entities using joins and relationship chaining. It also includes a security layer that provides full-disk encryption for the SQLite database to prevent unauthorized access to stored information. The system utilizes compile-time code generation to create mapping classes, avo

    greenDAO is a Java-based ORM framework designed specifically for Android and SQLite, providing efficient data persistence and type-safe queries, though it lacks JPA compliance and the broader database abstraction found in enterprise-grade ORMs.

    JavaObject Relational MappingAndroid SQLite ManagementCompile-Time Code Generation
    View on GitHub↗12,590
  • requery/requeryrequery avatar

    requery/requery

    3,123View on GitHub↗

    requery - modern SQL based query & persistence for Java / Kotlin / Android

    Requery is a modern Java and Kotlin persistence library that provides SQL-based querying and database abstraction, serving as a functional alternative to traditional JPA frameworks for simplifying data persistence.

    JavaDatabase ManagementDatabase Tools
    View on GitHub↗3,123
  • speedment/speedmentspeedment avatar

    speedment/speedment

    2,093View on GitHub↗

    Speedment is a Stream ORM Java Toolkit and Runtime

    Speedment is a Java ORM framework that uses a stream-based approach to database interaction, providing database abstraction and persistence capabilities even though it differs from traditional JPA-compliant implementations.

    JavaDatabase Tools
    View on GitHub↗2,093
  • gaarason/database-allgaarason avatar

    gaarason/database-all

    1,033View on GitHub↗

    This project is a Java-based object-relational mapping framework that utilizes the active record pattern to simplify database interactions. It provides a comprehensive data access layer that binds database tables directly to application objects, enabling developers to perform CRUD operations, manage complex entity relationships, and execute queries through a fluent, type-safe interface. Designed for integration with Spring Boot, the framework abstracts database complexities while maintaining support for native compilation and asynchronous execution. The framework distinguishes itself through

    This is a Java-based ORM framework that provides an Eloquent-style interface for database interaction and persistence, serving as a direct alternative to JPA-based solutions.

    JavaCRUD OperationsObject-Relational Mapping FrameworksActive Record Mappers
    View on GitHub↗1,033
  • kennethreitz-archive/recordskennethreitz-archive avatar

    kennethreitz-archive/records

    7,219View on GitHub↗

    Records is a suite of tools providing a SQL database client library, a transaction manager, and utilities for command line access and data export. It functions as a thin-layer wrapper that executes raw SQL queries against relational databases to retrieve results in simplified data formats. The project includes a command line interface for running database queries and a dedicated data export tool that converts relational query results into CSV, JSON, or Excel files for external analysis. The library covers relational database management through atomic transaction control with commit and rollb

    This is a Python-based SQL utility library for raw query execution and data export, which does not provide the Java-based ORM capabilities or JPA compliance required for this category.

    PythonTransaction ManagementDatabase Transaction Managers
    View on GitHub↗7,219
  • kennethreitz/recordskennethreitz avatar

    kennethreitz/records

    7,217View on GitHub↗

    Records is a SQL database client designed for executing raw queries and managing result sets through a simplified interface. It provides a parameterized SQL executor to bind values to placeholders, ensuring safe data handling and preventing injection attacks, alongside a database transaction manager for grouping operations into atomic units. The project includes a dedicated command-line interface for running database statements and exporting query results directly to local files. This tooling allows for the conversion of SQL result sets into multiple serialization formats, including CSV, JSON

    This is a Python-based SQL database client and query execution tool rather than a Java-based ORM framework, making it a different category of database utility.

    PythonDatabase Transaction ManagementDatabase Transaction Managers
    View on GitHub↗7,217
  • golang-migrate/migrategolang-migrate avatar

    golang-migrate/migrate

    18,118View on GitHub↗

    This project is a command-line utility designed to manage database schema versioning and automate incremental schema updates. It functions as a version control system for database structures, ensuring consistency across environments by tracking applied migrations in a dedicated metadata table and executing scripts in a sequential, reliable manner. The tool distinguishes itself through a driver-based abstraction layer that supports a wide range of database engines, including various SQL and distributed cloud databases. It provides robust concurrency control through advisory locking, which prev

    This is a database schema migration tool rather than an ORM framework, meaning it handles versioning and deployment of database structures but does not provide the object-relational mapping or data persistence features required for Java application development.

    GoSchema MigrationsDatabase Schema Migrations
    View on GitHub↗18,118
  • knex/knexknex avatar

    knex/knex

    20,300View on GitHub↗

    Knex is a multi-dialect database client that provides a programmatic SQL query builder, a connection pool manager, and a versioned schema migration tool. It enables programmatic database interaction across multiple SQL engines, including PostgreSQL, MySQL, SQLite3, SQL Server, CockroachDB, and Oracle. The project distinguishes itself through a fluent interface for constructing complex SQL statements and a dedicated framework for database seeding. It utilizes specialized dialects to translate generic query representations into database-specific syntax while maintaining a consistent API across

    This is a JavaScript-based SQL query builder and migration tool, which is a different category than a Java-based ORM framework and does not support the required Java-specific persistence standards.

    JavaScriptTransaction ManagementDatabase Schema MigrationsSchema Migration Tools
    View on GitHub↗20,300
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
hibernate/hibernate-orm6.4KJavaApache-2.0Jun 26, 2026
ebean-orm/ebean1.5KJavaApache-2.0Jun 23, 2026
spring-projects/spring-data-jpa3.3KJavaApache-2.0Jun 22, 2026
mybatis/mybatis-320.4KJavaapache-2.0Feb 21, 2026
greenrobot/greendao12.6KJava—Apr 30, 2024
requery/requery3.1KJavaApache-2.0Feb 9, 2026
speedment/speedment2.1KJavaApache-2.0Nov 7, 2023
gaarason/database-all1KJavaMITMay 9, 2026
kennethreitz-archive/records7.2KPythonISCFeb 9, 2026
kennethreitz/records7.2KPythonISCFeb 9, 2026

Related searches

  • an object relational mapping library for Kotlin
  • an object relational mapper for PHP
  • an object relational mapping library for Dart
  • an object relational mapper for C#
  • an object relational mapper for Rust
  • an object relational mapping library for Swift
  • an ORM for .NET apps
  • a TypeScript-first ORM for SQL databases