All Projects → Cosium → Spring Data Jpa Entity Graph

Cosium / Spring Data Jpa Entity Graph

Licence: mit
Spring Data JPA extension allowing full dynamic usage of EntityGraph on repositories

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Spring Data Jpa Entity Graph

spring-data-requery
Spring Data with Requery
Stars: ✭ 43 (-80.54%)
Mutual labels:  orm, spring-data, jpa
Spring-Boot-2
Spring Boot 2.x examples
Stars: ✭ 33 (-85.07%)
Mutual labels:  spring-data, jpa, spring-data-jpa
Jplusone
Tool for automatic detection and asserting "N+1 SELECT problem" occurences in JPA based Spring Boot Java applications and finding origin of JPA issued SQL statements in general
Stars: ✭ 91 (-58.82%)
Mutual labels:  orm, jpa, spring-data-jpa
Angularjs Springmvc Sample Boot
A RESTful sample using Spring Boot, Spring MVC, Spring Data and Angular/Bootstrap.
Stars: ✭ 309 (+39.82%)
Mutual labels:  jpa, spring-data-jpa, spring-data
Hibernate Basics
Samples for "Hibernate, how the magic is really done?" talk
Stars: ✭ 44 (-80.09%)
Mutual labels:  orm, jpa
Spring Mvc Thymeleaf Crud
Spring MVC CRUD Application with Thymeleaf, HTML5, CSS3 and Bootstrap
Stars: ✭ 14 (-93.67%)
Mutual labels:  spring-data-jpa, spring-data
Hunt Entity
An object-relational mapping (ORM) framework for D language (Similar to JPA / Doctrine), support PostgreSQL and MySQL.
Stars: ✭ 51 (-76.92%)
Mutual labels:  orm, jpa
Ebean
Ebean ORM
Stars: ✭ 1,172 (+430.32%)
Mutual labels:  orm, jpa
Favorites Web
云收藏 Spring Boot 2.X 开源项目
Stars: ✭ 4,485 (+1929.41%)
Mutual labels:  jpa, spring-data-jpa
Spring Examples
SpringBoot Examples
Stars: ✭ 67 (-69.68%)
Mutual labels:  spring-data-jpa, spring-data
Hibernate Performance
Samples for "Hibernate performance tuning" talk
Stars: ✭ 87 (-60.63%)
Mutual labels:  orm, jpa
Jpa Spec
A JPA Query By Specification framework.
Stars: ✭ 620 (+180.54%)
Mutual labels:  jpa, spring-data-jpa
Hibernate Springboot
Collection of best practices for Java persistence performance in Spring Boot applications
Stars: ✭ 589 (+166.52%)
Mutual labels:  jpa, spring-data
Kotlin Jpa Specification Dsl
This library provides a fluent DSL for querying spring data JPA repositories using spring data Specifications (i.e. the JPA Criteria API), without boilerplate code or a generated metamodel.
Stars: ✭ 203 (-8.14%)
Mutual labels:  jpa, spring-data
Hibernate Orm
Hibernate's core Object/Relational Mapping functionality
Stars: ✭ 4,806 (+2074.66%)
Mutual labels:  orm, jpa
Query Validator
Compile time validation for HQL and JPQL queries in Java code
Stars: ✭ 70 (-68.33%)
Mutual labels:  orm, jpa
Spring Kotlin Exposed
playground for spring-boot 2.*, kotlin , jetbrains-exposed, postgres, jsonb, flyway, docker
Stars: ✭ 106 (-52.04%)
Mutual labels:  orm, jpa
Spring Data Jpa Reference Documentation
Spring Data JPA 参考指南 中文版
Stars: ✭ 154 (-30.32%)
Mutual labels:  jpa, spring-data-jpa
Spring Data Jpa
Simplifies the development of creating a JPA-based data access layer.
Stars: ✭ 2,238 (+912.67%)
Mutual labels:  jpa, spring-data
Jeddict
Jakarta EE 8 (Java EE) & MicroProfile 3.2 application generator and modeler
Stars: ✭ 358 (+61.99%)
Mutual labels:  orm, jpa

Gitter Travis branch Codecov branch

Maven Central 1.10.x Maven Central 1.11.x Maven Central 1.11.x Maven Central 2.1.x Maven Central 2.2.x Maven Central 2.3.x Maven Central Latest

Spring Data JPA EntityGraph

Life without spring-data-jpa-entity-graph

Spring Data JPA only supports EntityGraph through annotations.
Thus, for a repository method, you must select at most one EntityGraph before compilation.
This prevents you from choosing the best EntityGraph considering the runtime context 💔

Life with spring-data-jpa-entity-graph

Thanks to spring-data-jpa-entity-graph, you can choose EntityGraph at runtime!
This choice is elegantly made by passing EntityGraph, as an argument, to any Spring Data JPA repository method 😍

// This will apply 'Product.brand' named EntityGraph to findByLabel
productRepository.findByLabel("foo", EntityGraphs.named("Product.brand"));

// This will apply "product(brand, category, maker(country))" dynamic EntityGraph to findByLabel
productRepository.findByLabel(
            "foo", 
            // ProductEntityGraph was generated at compilation time
            ProductEntityGraph.____()
                              .brand()
                              .____
                              .category()
                              .____
                              .maker()
                              .country()
                              .____
                              .____()
);

Now run to the documentation !

Documentation

This library follows the Spring Data JPA versionning semantic.

spring-data-jpa branches Latest spring-data-jpa-entity-graph version Documentation
2.4.x Maven Central Latest 2.4.x documentation
2.3.x Maven Central Latest 2.3.x documentation
2.2.x Maven Central Latest 2.2.x documentation
2.1.x Maven Central 2.1.x 2.1.x documentation
2.0.x Maven Central 2.0.x 2.0.x documentation
1.11.x Maven Central 1.11.x 1.11.x documentation
1.10.x Maven Central 1.10.x 1.10.x documentation

For example, if you were using spring-data-jpa 2.2.x in your project, you would need to select any spring-data-jpa-entity-graph 2.2.x. Thus spring-data-jpa-entity-graph 2.2.8 would be eligible.

"Making JPA Great Again" talk

This talk was given at Paris JUG in January 2019.

The slides are in english.
The video is in french:
Alt text

Genesis

This project was created following the discussion in Spring Data Tracker issue DATAJPA-749 - Context enabled JPA 2.1 @EntityGraph .

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].