本文整理汇总了Java中org.apache.ibatis.executor.result.DefaultResultContext类的典型用法代码示例。如果您正苦于以下问题:Java DefaultResultContext类的具体用法?Java DefaultResultContext怎么用?Java DefaultResultContext使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DefaultResultContext类属于org.apache.ibatis.executor.result包,在下文中一共展示了DefaultResultContext类的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: processLastResults
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
/**
* Client code <b>must</b> call this method once the query returns so that the final results
* can be passed to the inner RowHandler. If a query is limited by size, then it is
* possible that the unprocessed results represent an incomplete final object; in this case
* it would be best to ignore the last results. If the query is complete (i.e. all results
* are returned) then this method should be called.
* <p>
* If you want X results and each result is made up of N rows (on average), then set the query
* limit to: <br/>
* L = X * (N+1)<br/>
* and don't call this method.
*/
public void processLastResults()
{
// Shortcut if we have processed enough results
if (maxResults > 0 && resultCount >= maxResults)
{
return;
}
// Handle any outstanding results
Object resultObject = coalesceResults(configuration, rawResults, collectionProperty);
if (resultObject != null)
{
DefaultResultContext resultContext = new DefaultResultContext();
resultContext.nextResultObject(resultObject);
resultHandler.handleResult(resultContext);
resultCount++;
rawResults.clear(); // Stop it from being used again
}
}
开发者ID:Alfresco,项目名称:alfresco-core,代码行数:32,代码来源:RollupResultHandler.java
示例2: handleRowValuesForNestedResultMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void handleRowValuesForNestedResultMap(ResultSetWrapper rsw, ResultMap resultMap, ResultHandler resultHandler, RowBounds rowBounds, ResultMapping parentMapping) throws SQLException {
final DefaultResultContext resultContext = new DefaultResultContext();
skipRows(rsw.getResultSet(), rowBounds);
Object rowValue = null;
while (shouldProcessMoreRows(resultContext, rowBounds) && rsw.getResultSet().next()) {
final ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rsw.getResultSet(), resultMap, null);
final CacheKey rowKey = createRowKey(discriminatedResultMap, rsw, null);
Object partialObject = nestedResultObjects.get(rowKey);
// issue #577 && #542
if (mappedStatement.isResultOrdered()) {
if (partialObject == null && rowValue != null) {
nestedResultObjects.clear();
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, rowKey, null, partialObject);
} else {
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, rowKey, null, partialObject);
if (partialObject == null) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
}
if (rowValue != null && mappedStatement.isResultOrdered() && shouldProcessMoreRows(resultContext, rowBounds)) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
开发者ID:shurun19851206,项目名称:mybaties,代码行数:27,代码来源:DefaultResultSetHandler.java
示例3: handleRowValuesForNestedResultMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void handleRowValuesForNestedResultMap(ResultSetWrapper rsw, ResultMap resultMap, ResultHandler<?> resultHandler, RowBounds rowBounds, ResultMapping parentMapping) throws SQLException {
final DefaultResultContext<Object> resultContext = new DefaultResultContext<Object>();
skipRows(rsw.getResultSet(), rowBounds);
Object rowValue = null;
while (shouldProcessMoreRows(resultContext, rowBounds) && rsw.getResultSet().next()) {
final ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rsw.getResultSet(), resultMap, null);
final CacheKey rowKey = createRowKey(discriminatedResultMap, rsw, null);
Object partialObject = nestedResultObjects.get(rowKey);
// issue #577 && #542
if (mappedStatement.isResultOrdered()) {
if (partialObject == null && rowValue != null) {
nestedResultObjects.clear();
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, rowKey, null, partialObject);
} else {
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, rowKey, null, partialObject);
if (partialObject == null) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
}
if (rowValue != null && mappedStatement.isResultOrdered() && shouldProcessMoreRows(resultContext, rowBounds)) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
开发者ID:toulezu,项目名称:play,代码行数:27,代码来源:DefaultResultSetHandler.java
示例4: handleResult
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
public void handleResult(ResultContext context)
{
// Shortcut if we have processed enough results
if (maxResults > 0 && resultCount >= maxResults)
{
return;
}
Object valueObject = context.getResultObject();
MetaObject probe = configuration.newMetaObject(valueObject);
// Check if the key has changed
if (lastKeyValues == null)
{
lastKeyValues = getKeyValues(probe);
resultCount = 0;
}
// Check if it has changed
Object[] currentKeyValues = getKeyValues(probe);
if (!Arrays.deepEquals(lastKeyValues, currentKeyValues))
{
// Key has changed, so handle the results
Object resultObject = coalesceResults(configuration, rawResults, collectionProperty);
if (resultObject != null)
{
DefaultResultContext resultContext = new DefaultResultContext();
resultContext.nextResultObject(resultObject);
resultHandler.handleResult(resultContext);
resultCount++;
}
rawResults.clear();
lastKeyValues = currentKeyValues;
}
// Add the new value to the results for next time
rawResults.add(valueObject);
// Done
}
开发者ID:Alfresco,项目名称:alfresco-core,代码行数:39,代码来源:RollupResultHandler.java
示例5: handleRowValuesForSimpleResultMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void handleRowValuesForSimpleResultMap(ResultSetWrapper rsw, ResultMap resultMap, ResultHandler<?> resultHandler, RowBounds rowBounds, ResultMapping parentMapping)
throws SQLException {
DefaultResultContext<Object> resultContext = new DefaultResultContext<Object>();
skipRows(rsw.getResultSet(), rowBounds);
while (shouldProcessMoreRows(resultContext, rowBounds) && rsw.getResultSet().next()) {
ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rsw.getResultSet(), resultMap, null);
Object rowValue = getRowValue(rsw, discriminatedResultMap);
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
开发者ID:yuexiahandao,项目名称:MybatisCode,代码行数:11,代码来源:DefaultResultSetHandler.java
示例6: storeObject
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void storeObject(ResultHandler<?> resultHandler, DefaultResultContext<Object> resultContext, Object rowValue, ResultMapping parentMapping, ResultSet rs) throws SQLException {
if (parentMapping != null) {
linkToParents(rs, parentMapping, rowValue);
} else {
callResultHandler(resultHandler, resultContext, rowValue);
}
}
开发者ID:yuexiahandao,项目名称:MybatisCode,代码行数:8,代码来源:DefaultResultSetHandler.java
示例7: handleRowValuesForNestedResultMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void handleRowValuesForNestedResultMap(ResultSetWrapper rsw, ResultMap resultMap, ResultHandler<?> resultHandler, RowBounds rowBounds, ResultMapping parentMapping) throws SQLException {
final DefaultResultContext<Object> resultContext = new DefaultResultContext<Object>();
skipRows(rsw.getResultSet(), rowBounds);
Object rowValue = previousRowValue;
while (shouldProcessMoreRows(resultContext, rowBounds) && rsw.getResultSet().next()) {
final ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rsw.getResultSet(), resultMap, null);
final CacheKey rowKey = createRowKey(discriminatedResultMap, rsw, null);
Object partialObject = nestedResultObjects.get(rowKey);
// issue #577 && #542
if (mappedStatement.isResultOrdered()) {
if (partialObject == null && rowValue != null) {
nestedResultObjects.clear();
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, null, partialObject);
} else {
rowValue = getRowValue(rsw, discriminatedResultMap, rowKey, null, partialObject);
if (partialObject == null) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
}
if (rowValue != null && mappedStatement.isResultOrdered() && shouldProcessMoreRows(resultContext, rowBounds)) {
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
previousRowValue = null;
} else if (rowValue != null) {
previousRowValue = rowValue;
}
}
开发者ID:yuexiahandao,项目名称:MybatisCode,代码行数:30,代码来源:DefaultResultSetHandler.java
示例8: selectMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@Override
public <K, V> Map<K, V> selectMap(String statement, Object parameter, String mapKey, RowBounds rowBounds) {
final List<? extends V> list = selectList(statement, parameter, rowBounds);
final DefaultMapResultHandler<K, V> mapResultHandler = new DefaultMapResultHandler<K, V>(mapKey,
configuration.getObjectFactory(), configuration.getObjectWrapperFactory(), configuration.getReflectorFactory());
final DefaultResultContext<V> context = new DefaultResultContext<V>();
for (V o : list) {
context.nextResultObject(o);
mapResultHandler.handleResult(context);
}
return mapResultHandler.getMappedResults();
}
开发者ID:txazo,项目名称:mybatis,代码行数:13,代码来源:DefaultSqlSession.java
示例9: selectMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@Override
public <K, V> Map<K, V> selectMap(String statement, Object parameter, String mapKey, RowBounds rowBounds) {
final List<?> list = selectList(statement, parameter, rowBounds);
final DefaultMapResultHandler<K, V> mapResultHandler = new DefaultMapResultHandler<K, V>(mapKey,
configuration.getObjectFactory(), configuration.getObjectWrapperFactory(),
configuration.getReflectorFactory());
final DefaultResultContext context = new DefaultResultContext();
for (Object o : list) {
context.nextResultObject(o);
mapResultHandler.handleResult(context);
}
Map<K, V> selectedMap = mapResultHandler.getMappedResults();
return selectedMap;
}
开发者ID:nince-wyj,项目名称:jahhan,代码行数:15,代码来源:DefaultSqlSessionHelper.java
示例10: selectMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@Override
public <K, V> Map<K, V> selectMap(String statement, Object parameter, String mapKey, RowBounds rowBounds) {
//转而去调用selectList
final List<?> list = selectList(statement, parameter, rowBounds);
final DefaultMapResultHandler<K, V> mapResultHandler = new DefaultMapResultHandler<K, V>(mapKey,
configuration.getObjectFactory(), configuration.getObjectWrapperFactory());
final DefaultResultContext context = new DefaultResultContext();
for (Object o : list) {
//循环用DefaultMapResultHandler处理每条记录
context.nextResultObject(o);
mapResultHandler.handleResult(context);
}
//注意这个DefaultMapResultHandler里面存了所有已处理的记录(内部实现可能就是一个Map),最后再返回一个Map
return mapResultHandler.getMappedResults();
}
开发者ID:shurun19851206,项目名称:mybaties,代码行数:16,代码来源:DefaultSqlSession.java
示例11: handleRowValuesForSimpleResultMap
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void handleRowValuesForSimpleResultMap(ResultSetWrapper rsw, ResultMap resultMap, ResultHandler resultHandler, RowBounds rowBounds, ResultMapping parentMapping)
throws SQLException {
DefaultResultContext resultContext = new DefaultResultContext();
skipRows(rsw.getResultSet(), rowBounds);
while (shouldProcessMoreRows(resultContext, rowBounds) && rsw.getResultSet().next()) {
ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rsw.getResultSet(), resultMap, null);
Object rowValue = getRowValue(rsw, discriminatedResultMap);
storeObject(resultHandler, resultContext, rowValue, parentMapping, rsw.getResultSet());
}
}
开发者ID:shurun19851206,项目名称:mybaties,代码行数:11,代码来源:DefaultResultSetHandler.java
示例12: storeObject
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void storeObject(ResultHandler resultHandler, DefaultResultContext resultContext, Object rowValue, ResultMapping parentMapping, ResultSet rs) throws SQLException {
if (parentMapping != null) {
linkToParents(rs, parentMapping, rowValue);
} else {
callResultHandler(resultHandler, resultContext, rowValue);
}
}
开发者ID:shurun19851206,项目名称:mybaties,代码行数:8,代码来源:DefaultResultSetHandler.java
示例13: handleRowValues
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
protected void handleRowValues(ResultSet rs, ResultMap resultMap, ResultHandler resultHandler, RowBounds rowBounds, ResultColumnCache resultColumnCache) throws SQLException {
final DefaultResultContext resultContext = new DefaultResultContext();
skipRows(rs, rowBounds);
while (shouldProcessMoreRows(rs, resultContext, rowBounds)) {
final ResultMap discriminatedResultMap = resolveDiscriminatedResultMap(rs, resultMap, null);
Object rowValue = getRowValue(rs, discriminatedResultMap, null, resultColumnCache);
resultContext.nextResultObject(rowValue);
resultHandler.handleResult(resultContext);
}
}
开发者ID:youngor,项目名称:openclouddb,代码行数:11,代码来源:FastResultSetHandler.java
示例14: selectChildAssocs
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@Override
public void selectChildAssocs(
Long parentNodeId,
QName assocTypeQName,
QName assocQName,
final int maxResults,
ChildAssocRefQueryCallback resultsCallback)
{
ChildAssocEntity assoc = new ChildAssocEntity();
// Parent
NodeEntity parentNode = new NodeEntity();
parentNode.setId(parentNodeId);
assoc.setParentNode(parentNode);
// Type QName
if (assocTypeQName != null)
{
if (!assoc.setTypeQNameAll(qnameDAO, assocTypeQName, false))
{
resultsCallback.done();
return; // Shortcut
}
}
// QName
if (assocQName != null)
{
if (!assoc.setQNameAll(qnameDAO, assocQName, false))
{
resultsCallback.done();
return; // Shortcut
}
}
// Order
assoc.setOrdered(resultsCallback.orderResults());
ChildAssocResultHandler resultHandler = new ChildAssocResultHandler(resultsCallback);
RowBounds rowBounds = new RowBounds(0, maxResults);
List<?> entities = template.selectList(SELECT_CHILD_ASSOCS_OF_PARENT_LIMITED, assoc, rowBounds);
final DefaultResultContext resultContext = new DefaultResultContext();
for (Object entity : entities)
{
resultContext.nextResultObject(entity);
resultHandler.handleResult(resultContext);
}
resultsCallback.done();
}
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:49,代码来源:NodeDAOImpl.java
示例15: callResultHandler
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@SuppressWarnings("unchecked" /* because ResultHandler<?> is always ResultHandler<Object>*/)
private void callResultHandler(ResultHandler<?> resultHandler, DefaultResultContext<Object> resultContext, Object rowValue) {
resultContext.nextResultObject(rowValue);
((ResultHandler<Object>)resultHandler).handleResult(resultContext);
}
开发者ID:yuexiahandao,项目名称:MybatisCode,代码行数:6,代码来源:DefaultResultSetHandler.java
示例16: callResultHandler
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
private void callResultHandler(ResultHandler resultHandler, DefaultResultContext resultContext, Object rowValue) {
resultContext.nextResultObject(rowValue);
resultHandler.handleResult(resultContext);
}
开发者ID:shurun19851206,项目名称:mybaties,代码行数:5,代码来源:DefaultResultSetHandler.java
示例17: callResultHandler
import org.apache.ibatis.executor.result.DefaultResultContext; //导入依赖的package包/类
@SuppressWarnings("unchecked" /* because ResultHandler<?> is always ResultHandler<Object>*/)
private void callResultHandler(ResultHandler<?> resultHandler, DefaultResultContext<Object> resultContext, Object rowValue) {
resultContext.nextResultObject(rowValue);
((ResultHandler<Object>) resultHandler).handleResult(resultContext);
}
开发者ID:mybatis,项目名称:mybatis-3,代码行数:6,代码来源:DefaultResultSetHandler.java
注:本文中的org.apache.ibatis.executor.result.DefaultResultContext类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论