下面列出了怎么用org.hibernate.hql.internal.ast.tree.SelectClause的API类实例代码及写法,或者点击链接到github查看源代码。
public ReactiveQueryLoader(
QueryTranslatorImpl queryTranslator,
SessionFactoryImplementor factory,
SelectClause selectClause) {
super( queryTranslator, factory, selectClause );
this.queryTranslator = queryTranslator;
this.factory = factory;
this.selectClause = selectClause;
this.resultSetProcessor = new ReactiveLoaderBasedResultSetProcessor( this ) {
public CompletionStage<List<Object>> reactiveExtractResults(ResultSet rs,
SharedSessionContractImplementor session,
QueryParameters queryParameters,
NamedParameterContext namedParameterContext,
boolean returnProxies, boolean readOnly,
ResultTransformer forcedResultTransformer,
List<AfterLoadAction> afterLoadActionList) throws SQLException {
final RowSelection rowSelection = queryParameters.getRowSelection();
final ResultSet resultSetPreprocessed = preprocessResultSet(
rs,
rowSelection,
getLimitHandler( rowSelection ),
false,
session
);
return super.reactiveExtractResults(
resultSetPreprocessed,
session,
queryParameters,
namedParameterContext,
returnProxies,
readOnly,
forcedResultTransformer,
afterLoadActionList
);
}
};
}
/**
* Creates a new Loader implementation.
*
* @param queryTranslator The query translator that is the delegator.
* @param factory The factory from which this loader is being created.
* @param selectClause The AST representing the select clause for loading.
*/
public QueryLoader(
final QueryTranslatorImpl queryTranslator,
final SessionFactoryImplementor factory,
final SelectClause selectClause) {
super( factory );
this.queryTranslator = queryTranslator;
initialize( selectClause );
postInstantiate();
}
private void createSelectClauseFromFromClause(QueryNode qn) throws SemanticException {
AST select = astFactory.create( SELECT_CLAUSE, "{derived select clause}" );
AST sibling = qn.getFromClause();
qn.setFirstChild( select );
select.setNextSibling( sibling );
selectClause = (SelectClause) select;
selectClause.initializeDerivedSelectClause( currentFromClause );
LOG.debug( "Derived SELECT clause created." );
}
private void useSelectClause(AST select) throws SemanticException {
selectClause = (SelectClause) select;
selectClause.initializeExplicitSelectClause( currentFromClause );
}
public SelectClause getSelectClause() {
return selectClause;
}