org.hibernate.engine.query.spi.QueryPlanCache.getSQLParameterMetadata()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(4.7k)|赞(0)|评价(0)|浏览(87)

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

QueryPlanCache.getSQLParameterMetadata介绍

[英]Obtain the parameter metadata for given native-sql query.

for native-sql queries, the param metadata is determined outside any relation to a query plan, because query plan creation and/or retrieval for a native-sql query depends on all of the return types having been set, which might not be the case up-front when param metadata would be most useful
[中]获取给定本机sql查询的参数元数据。
对于本机sql查询,param元数据是在与查询计划的任何关系之外确定的,因为本机sql查询的查询计划创建和/或检索取决于已设置的所有返回类型,这可能不是param元数据最有用的情况

代码示例

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

private NativeQueryImplementor createNativeQuery(NamedSQLQueryDefinition queryDefinition, boolean isOrdinalParameterZeroBased) {
  final ParameterMetadata parameterMetadata = factory.getQueryPlanCache().getSQLParameterMetadata(
      queryDefinition.getQueryString(),
      isOrdinalParameterZeroBased
  );
  return getNativeQueryImplementor( queryDefinition, parameterMetadata );
}

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

protected NativeQueryImplementor getNativeQueryImplementor(
    String queryString,
    boolean isOrdinalParameterZeroBased) {
  checkOpen();
  checkTransactionSynchStatus();
  delayedAfterCompletion();
  try {
    NativeQueryImpl query = new NativeQueryImpl(
        queryString,
        false,
        this,
        getFactory().getQueryPlanCache().getSQLParameterMetadata( queryString, isOrdinalParameterZeroBased )
    );
    query.setComment( "dynamic native SQL query" );
    return query;
  }
  catch ( RuntimeException he ) {
    throw exceptionConverter.convert( he );
  }
}

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

@SuppressWarnings({"WeakerAccess", "unchecked"})
protected <T> NativeQueryImplementor createNativeQuery(NamedSQLQueryDefinition queryDefinition, Class<T> resultType) {
  if ( resultType != null && !Tuple.class.equals(resultType)) {
    resultClassChecking( resultType, queryDefinition );
  }
  final NativeQueryImpl query = new NativeQueryImpl(
      queryDefinition,
      this,
      factory.getQueryPlanCache().getSQLParameterMetadata( queryDefinition.getQueryString(), false )
  );
  if (Tuple.class.equals(resultType)) {
    query.setResultTransformer(new NativeQueryTupleTransformer());
  }
  query.setHibernateFlushMode( queryDefinition.getFlushMode() );
  query.setComment( queryDefinition.getComment() != null ? queryDefinition.getComment() : queryDefinition.getName() );
  if ( queryDefinition.getLockOptions() != null ) {
    query.setLockOptions( queryDefinition.getLockOptions() );
  }
  initQueryFromNamedDefinition( query, queryDefinition );
  applyQuerySettingsAndHints( query );
  return query;
}

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

@Override
public SQLQuery createSQLQuery(String sql) {
  errorIfClosed();
  SQLQueryImpl query = new SQLQueryImpl(
      sql,
      this,
      factory.getQueryPlanCache().getSQLParameterMetadata( sql )
  );
  query.setComment( "dynamic native SQL query" );
  return query;
}

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

@Override
public SQLQuery createSQLQuery(String sql) {
  errorIfClosed();
  SQLQueryImpl query = new SQLQueryImpl(
      sql,
      this,
      factory.getQueryPlanCache().getSQLParameterMetadata( sql )
  );
  query.setComment( "dynamic native SQL query" );
  return query;
}

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

@Override
public Query getNamedSQLQuery(String queryName) throws MappingException {
  errorIfClosed();
  NamedSQLQueryDefinition nsqlqd = factory.getNamedSQLQuery( queryName );
  if ( nsqlqd==null ) {
    throw new MappingException( "Named SQL query not known: " + queryName );
  }
  Query query = new SQLQueryImpl(
      nsqlqd,
      this,
      factory.getQueryPlanCache().getSQLParameterMetadata( nsqlqd.getQueryString() )
  );
  query.setComment( "named native SQL query " + queryName );
  initQuery( query, nsqlqd );
  return query;
}

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

@Override
public Query getNamedSQLQuery(String queryName) throws MappingException {
  errorIfClosed();
  NamedSQLQueryDefinition nsqlqd = factory.getNamedSQLQuery( queryName );
  if ( nsqlqd==null ) {
    throw new MappingException( "Named SQL query not known: " + queryName );
  }
  Query query = new SQLQueryImpl(
      nsqlqd,
      this,
      factory.getQueryPlanCache().getSQLParameterMetadata( nsqlqd.getQueryString() )
  );
  query.setComment( "named native SQL query " + queryName );
  initQuery( query, nsqlqd );
  return query;
}

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

nsqlqd,
    this,
    factory.getQueryPlanCache().getSQLParameterMetadata( nsqlqd.getQueryString() )
);
query.setComment( "named native SQL query " + queryName );

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

nsqlqd,
    this,
    factory.getQueryPlanCache().getSQLParameterMetadata( nsqlqd.getQueryString() )
);
query.setComment( "named native SQL query " + queryName );

相关文章