StatementMetaData smd = new StatementMetaData(daoMetaData, method);
SQLType sqlType = smd.getSQLType();
Querier querier;
if (sqlType == SQLType.READ) {
RowMapper<?> rowMapper = rowMapperFactory.getRowMapper(smd);
querier = new SelectQuerier(dataAccessFactory, smd, rowMapper);
} else {
querier = new UpdateQuerier(dataAccessFactory, smd);
}
Interpreter[] interpreters = interpreterFactory.getInterpreters(smd);
statement = new JdbcStatement(smd, sqlType, interpreters, querier);