List of usage examples for org.apache.ibatis.mapping ResultMap hasNestedQueries
boolean hasNestedQueries
To view the source code for org.apache.ibatis.mapping ResultMap hasNestedQueries.
Click Source Link
From source file:com.github.abel533.mapper.MapperHelper.java
License:Open Source License
/** * ?Key?//from w w w. j ava 2 s.c o m * * @param result * @param ms */ public void cameHumpMap(Object result, MappedStatement ms) { ResultMap resultMap = ms.getResultMaps().get(0); Class<?> type = resultMap.getType(); //?typeMap,???resultMap,??? if (result instanceof List && ((List) result).size() > 0 && Map.class.isAssignableFrom(type) && !resultMap.hasNestedQueries() && !resultMap.hasNestedResultMaps()) { List resultList = (List) result; //1.resultType if (resultMap.getId().endsWith("-Inline")) { for (Object re : resultList) { processMap((Map) re); } } else {//2.resultMap for (Object re : resultList) { processMap((Map) re, resultMap.getResultMappings()); } } } }
From source file:com.yunmel.syncretic.core.CameHumpInterceptor.java
License:Apache License
public Object intercept(Invocation invocation) throws Throwable { // ??/* w w w.jav a 2s . c o m*/ Object result = invocation.proceed(); MappedStatement mappedStatement = (MappedStatement) invocation.getArgs()[0]; ResultMap resultMap = mappedStatement.getResultMaps().get(0); Class<?> type = resultMap.getType(); // ?typeMap,???resultMap,??? if (((List) result).size() > 0 && Map.class.isAssignableFrom(type) && !resultMap.hasNestedQueries() && !resultMap.hasNestedResultMaps()) { List resultList = (List) result; // 1.resultType if (resultMap.getId().endsWith(RESULT_TYPE)) { for (Object re : resultList) { if (re == null) continue; processMap((Map) re); } } else {// 2.resultMap for (Object re : resultList) { processMap((Map) re, resultMap.getResultMappings()); } } } return result; }