Class JpaMetamodelMappingContext
java.lang.Object
org.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
org.springframework.data.jpa.mapping.JpaMetamodelMappingContext
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware,org.springframework.context.ApplicationEventPublisherAware,org.springframework.data.mapping.context.MappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
public class JpaMetamodelMappingContext
extends org.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
MappingContext implementation based on a Jpa Metamodel.- Since:
- 1.3
- Author:
- Oliver Gierke, Christoph Strobl, Mark Paluch, David Madden
-
Constructor Summary
ConstructorsConstructorDescriptionJpaMetamodelMappingContext(Set<jakarta.persistence.metamodel.Metamodel> models) Creates a new JPAMetamodelbasedMappingContext. -
Method Summary
Modifier and TypeMethodDescriptionprotected <T> org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>createPersistentEntity(org.springframework.data.util.TypeInformation<T> typeInformation) protected JpaPersistentPropertycreatePersistentProperty(org.springframework.data.mapping.model.Property property, org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?> owner, org.springframework.data.mapping.model.SimpleTypeHolder simpleTypeHolder) <T> org.springframework.data.mapping.PersistentPropertyPaths<T,JpaPersistentProperty> findPersistentPropertyPaths(Class<T> type, Predicate<? super JpaPersistentProperty> predicate) We customize the lookup ofPersistentPropertyPathsby also traversing properties that are embeddables.booleanhasPersistentEntityFor(Class<?> type) protected booleanshouldCreatePersistentEntityFor(org.springframework.data.util.TypeInformation<?> type) Methods inherited from class org.springframework.data.mapping.context.AbstractMappingContext
addPersistentEntity, addPersistentEntity, afterPropertiesSet, doFindPersistentPropertyPaths, getManagedTypes, getPersistentEntities, getPersistentEntity, getPersistentEntity, getPersistentEntity, getPersistentPropertyPath, getPersistentPropertyPath, initialize, setApplicationContext, setApplicationEventPublisher, setInitialEntitySet, setManagedTypes, setSimpleTypeHolder, setStrictMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.data.mapping.context.MappingContext
getRequiredPersistentEntity, getRequiredPersistentEntity, getRequiredPersistentEntity
-
Constructor Details
-
JpaMetamodelMappingContext
Creates a new JPAMetamodelbasedMappingContext.- Parameters:
models- must not be null or empty.
-
-
Method Details
-
createPersistentEntity
protected <T> org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?> createPersistentEntity(org.springframework.data.util.TypeInformation<T> typeInformation) - Specified by:
createPersistentEntityin classorg.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
-
createPersistentProperty
protected JpaPersistentProperty createPersistentProperty(org.springframework.data.mapping.model.Property property, org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?> owner, org.springframework.data.mapping.model.SimpleTypeHolder simpleTypeHolder) - Specified by:
createPersistentPropertyin classorg.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
-
shouldCreatePersistentEntityFor
protected boolean shouldCreatePersistentEntityFor(org.springframework.data.util.TypeInformation<?> type) - Overrides:
shouldCreatePersistentEntityForin classorg.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
-
findPersistentPropertyPaths
public <T> org.springframework.data.mapping.PersistentPropertyPaths<T,JpaPersistentProperty> findPersistentPropertyPaths(Class<T> type, Predicate<? super JpaPersistentProperty> predicate) We customize the lookup ofPersistentPropertyPathsby also traversing properties that are embeddables.- Specified by:
findPersistentPropertyPathsin interfaceorg.springframework.data.mapping.context.MappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty> - Overrides:
findPersistentPropertyPathsin classorg.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty> - See Also:
-
AbstractMappingContext.findPersistentPropertyPaths(java.lang.Class, java.util.function.Predicate)
-
hasPersistentEntityFor
- Specified by:
hasPersistentEntityForin interfaceorg.springframework.data.mapping.context.MappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty> - Overrides:
hasPersistentEntityForin classorg.springframework.data.mapping.context.AbstractMappingContext<org.springframework.data.jpa.mapping.JpaPersistentEntityImpl<?>,JpaPersistentProperty>
-