org.hibernate.engine.spi.SessionFactoryImplementor.getIdentifierGenerator()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(5.9k)|赞(0)|评价(0)|浏览(101)

本文整理了Java中org.hibernate.engine.spi.SessionFactoryImplementor.getIdentifierGenerator()方法的一些代码示例,展示了SessionFactoryImplementor.getIdentifierGenerator()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。SessionFactoryImplementor.getIdentifierGenerator()方法的具体详情如下:
包路径:org.hibernate.engine.spi.SessionFactoryImplementor
类名称:SessionFactoryImplementor
方法名:getIdentifierGenerator

SessionFactoryImplementor.getIdentifierGenerator介绍

[英]Get the identifier generator for the hierarchy
[中]获取层次结构的标识符生成器

代码示例

代码示例来源:origin: hibernate/hibernate-orm

@Override
public IdentifierGenerator getIdentifierGenerator(String rootEntityName) {
  return delegate.getIdentifierGenerator( rootEntityName );
}

代码示例来源:origin: hibernate/hibernate-orm

@Override
  public void execute(Connection connection) throws SQLException {
    PreparedStatement statement = null;
    try {
      statement = connection.prepareStatement( "INSERT INTO sequenceIdentifier VALUES (?)" );
      statement.setObject( 1, sfi.getIdentifierGenerator( SequenceIdentifier.class.getName() ).generate( si, null ) );
      statement.executeUpdate();
    }
    finally {
      if ( statement != null ) {
        statement.close();
      }
    }
  }
}

代码示例来源:origin: hibernate/hibernate-orm

sessionFactory.getIdentifierGenerator( rootName )
);

代码示例来源:origin: org.hibernate.orm/hibernate-core

@Override
public IdentifierGenerator getIdentifierGenerator(String rootEntityName) {
  return delegate.getIdentifierGenerator( rootEntityName );
}

代码示例来源:origin: hibernate/hibernate-ogm

protected IdentifierGenerator generateKeyMetadata(Class<?> entityClass) {
  SessionFactoryImplementor sessionFactory = (SessionFactoryImplementor) getFactory();
  IdentifierGenerator generator = sessionFactory.getIdentifierGenerator( entityClass.getName() );
  return generator;
}

代码示例来源:origin: org.hibernate.orm/hibernate-core

@SuppressWarnings("unchecked")
public EntityIdentifierCompositeAggregatedImpl(
    EntityHierarchyImpl runtimeModelHierarchy,
    RootClass bootModelRootEntity,
    EmbeddedTypeDescriptor embeddedDescriptor,
    RuntimeModelCreationContext creationContext) {
  super(
      runtimeModelHierarchy.getRootEntityType(),
      bootModelRootEntity.getIdentifierProperty(),
      embeddedDescriptor.getRepresentationStrategy().generatePropertyAccess(
          bootModelRootEntity,
          bootModelRootEntity.getIdentifierProperty(),
          (ManagedTypeDescriptor<?>) embeddedDescriptor.getContainer(),
          creationContext.getSessionFactory().getSessionFactoryOptions().getBytecodeProvider()
      ),
      Disposition.ID
  );
  this.embeddedDescriptor = embeddedDescriptor;
  this.identifierGenerator = creationContext.getSessionFactory().getIdentifierGenerator( bootModelRootEntity.getEntityName() );
  final ValueMapping<?> valueMapping = bootModelRootEntity.getIdentifierAttributeMapping().getValueMapping();
  this.columns = valueMapping.getMappedColumns().stream()
      .map( creationContext.getDatabaseObjectResolver()::resolveColumn )
      .collect( Collectors.toList() );
}

代码示例来源:origin: com.github.mg365/mg-common

/**
 * 调用entity 的主键生成方式
 * @param entity
 * @return
 */
public synchronized Serializable generate(Object entity) {
  Session factorySession = (org.hibernate.Session) entityManager.getDelegate();
  SessionImplementor sessionImplementor = entityManager.unwrap(SessionImplementor.class);
  SessionFactoryImplementor sessionFactory = (SessionFactoryImplementor) factorySession.getSessionFactory();
  //方式一
  String entityName  = "";
  EntityPersister persister = sessionImplementor.getEntityPersister(entityName, entity);
  Serializable generatedId = persister.getIdentifierGenerator().generate(sessionImplementor, entity);
  //方式二
  PersistentClass persistentClass = null;
  Property property = persistentClass.getIdentifierProperty();
  IdentifierProperty identifierProperty = PropertyFactory.buildIdentifierProperty(
      persistentClass,
      sessionFactory.getIdentifierGenerator(entityName)
  );
  identifierProperty.getIdentifierGenerator().generate(sessionImplementor,entity);
  sessionFactory.getDialect();
  sessionFactory.getEntityPersister("");
  //方式三
  IdentifierGenerator identifierGenerator = sessionFactory.getIdentifierGenerator(entityName);
  String id = "" + identifierGenerator.generate(sessionImplementor,entity);
  return id;
}

代码示例来源:origin: hibernate/hibernate-ogm

this.canGridDialectDoMultiget = GridDialects.hasFacet( gridDialect, MultigetGridDialect.class );
if ( factory.getIdentifierGenerator( getEntityName() ) instanceof OgmIdentityGenerator && identityColumnAwareGridDialect == null ) {
  throw log.getIdentityGenerationStrategyNotSupportedException( getEntityName() );

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.core

sessionFactory.getIdentifierGenerator( rootName )
);

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate

sessionFactory.getIdentifierGenerator( rootName )
);

代码示例来源:origin: org.hibernate.orm/hibernate-core

@SuppressWarnings({"unchecked", "WeakerAccess"})
public EntityIdentifierSimpleImpl(
    EntityHierarchyImpl runtimeModelHierarchy,
    RootClass bootModelRootEntity,
    RuntimeModelCreationContext creationContext) {
  super(
      runtimeModelHierarchy.getRootEntityType(),
      bootModelRootEntity.getIdentifierAttributeMapping(),
      runtimeModelHierarchy.getRootEntityType().getRepresentationStrategy().generatePropertyAccess(
          bootModelRootEntity,
          bootModelRootEntity.getIdentifierAttributeMapping(),
          runtimeModelHierarchy.getRootEntityType(),
          creationContext.getSessionFactory().getSessionFactoryOptions().getBytecodeProvider()
      ),
      Disposition.ID
  );
  this.name = bootModelRootEntity.getIdentifierAttributeMapping().getName();
  final BasicValueMapping<J> basicValueMapping = (BasicValueMapping<J>) bootModelRootEntity.getIdentifierAttributeMapping().getValueMapping();
  this.column = creationContext.getDatabaseObjectResolver().resolveColumn( basicValueMapping.getMappedColumn() );
  this.valueMapper = basicValueMapping.getResolution().getValueMapper();
  this.identifierGenerator = creationContext.getSessionFactory().getIdentifierGenerator( bootModelRootEntity.getEntityName() );
}

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate

sessionFactory.getIdentifierGenerator( rootName )
);

代码示例来源:origin: org.hibernate/com.springsource.org.hibernate.core

sessionFactory.getIdentifierGenerator( rootName )
);

相关文章

微信公众号

最新文章

更多

SessionFactoryImplementor类方法