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

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

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

QueryParameters.getFilteredSQL介绍

暂无

代码示例

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

/**
 * For Oracle, the FOR UPDATE clause cannot be applied when using ORDER BY, DISTINCT or views.
 * @param parameters
 * @return
 @see <a href="https://docs.oracle.com/database/121/SQLRF/statements_10002.htm#SQLRF01702">Oracle FOR UPDATE restrictions</a>
 */
@Override
public boolean useFollowOnLocking(QueryParameters parameters) {
  if (parameters != null ) {
    String lowerCaseSQL = parameters.getFilteredSQL().toLowerCase();
    return
      DISTINCT_KEYWORD_PATTERN.matcher( lowerCaseSQL ).find() ||
      GROUP_BY_KEYWORD_PATTERN.matcher( lowerCaseSQL ).find() ||
      UNION_KEYWORD_PATTERN.matcher( lowerCaseSQL ).find() ||
      (
        parameters.hasRowSelection() &&
          (
            ORDER_BY_KEYWORD_PATTERN.matcher( lowerCaseSQL ).find() ||
            parameters.getRowSelection().getFirstRow() != null
          )
      );
  }
  else {
    return true;
  }
}

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

/**
 * Create the subselect fetch query fragment for the provided {@link QueryParameters}
 * with SELECT and ORDER BY clauses removed.
 *
 * @param queryParameters -the query parameters.
 * @return the subselect fetch query fragment.
 */
public static String createSubselectFetchQueryFragment(QueryParameters queryParameters) {
  //TODO: ugly here:
  final String queryString = queryParameters.getFilteredSQL();
  final int fromIndex = getFromIndex( queryString );
  final int orderByIndex = queryString.lastIndexOf( "order by" );
  final String subselectQueryFragment =  orderByIndex > 0
      ? queryString.substring( fromIndex, orderByIndex )
      : queryString.substring( fromIndex );
  if ( LOG.isTraceEnabled() ) {
    LOG.tracef( "SubselectFetch query fragment: %s", subselectQueryFragment );
  }
  return subselectQueryFragment;
}

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

protected SqlStatementWrapper executeQueryStatement(
    String sqlStatement,
    QueryParameters queryParameters,
    boolean scroll,
    List<AfterLoadAction> afterLoadActions,
    SharedSessionContractImplementor session) throws SQLException {
  // Processing query filters.
  queryParameters.processFilters( sqlStatement, session );
  // Applying LIMIT clause.
  final LimitHandler limitHandler = getLimitHandler(
      queryParameters.getRowSelection()
  );
  String sql = limitHandler.processSql( queryParameters.getFilteredSQL(), queryParameters.getRowSelection() );
  // Adding locks and comments.
  sql = session.getJdbcServices().getJdbcEnvironment().getDialect()
      .addSqlHintOrComment(
        sql,
        queryParameters,
        session.getFactory().getSessionFactoryOptions().isCommentsEnabled()
      );
  final PreparedStatement st = prepareQueryStatement( sql, queryParameters, limitHandler, scroll, session );
  return new SqlStatementWrapper( st, getResultSet( st, queryParameters.getRowSelection(), limitHandler, queryParameters.hasAutoDiscoverScalarTypes(), session ) );
}

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

queryParameters.getRowSelection()
);
String sql = limitHandler.processSql( queryParameters.getFilteredSQL(), queryParameters.getRowSelection() );

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

final String sql = session.getJdbcServices().getDialect()
    .addSqlHintOrComment(
      queryParameters.getFilteredSQL(),
      queryParameters,
      session.getFactory().getSessionFactoryOptions().isCommentsEnabled()

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-6.0

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-5

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-5.2

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-5.2

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-5

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: com.blazebit/blaze-persistence-integration-hibernate-6.0

public CustomSubselectCollectionLoader(QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

代码示例来源:origin: Blazebit/blaze-persistence

public CustomSubselectOneToManyLoader(QueryableCollection persister, String subquery, java.util.Collection entityKeys, QueryParameters queryParameters, Map<String, int[]> namedParameterLocMap, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers) throws MappingException {
  super(persister, subquery, entityKeys, queryParameters, namedParameterLocMap, factory, loadQueryInfluencers);
  String originalSql = queryParameters.getFilteredSQL();
  if (originalSql.startsWith("with ")) {
    StringBuilder sb = new StringBuilder(sql.length() + originalSql.length());
    cteParameterCount = SubselectLoaderUtils.applyCteAndCountParameters(originalSql, sb);
    sb.append(sql);
    this.sql = sb.toString();
  } else {
    cteParameterCount = 0;
  }
}

相关文章

微信公众号

最新文章

更多