@startuml
title SqlSession selectList
SqlSession -> Configuration : getMappedStatement(statement)
return ms
SqlSession -> Executor : query(ms, wrapCollection(parameter), rowBounds, handler)
Executor -> StatementHandler : prepare(connection, transaction.getTimeout())
StatementHandler -> Statement : new
return stmt
StatementHandler -> Executor : Statement stmt
Executor -> StatementHandler : query(stmt, resultHandler)
StatementHandler -> Statement : execute(sql)
return
StatementHandler -> ResultHandler : handleResultSets(statement)
ResultHandler -> StatementHandler : result
StatementHandler -> Executor : result
Executor -> SqlSession : result
@enduml