SingleQuerySqlGenerator and AggregateResultSetExtractor should support projection information, limiting the the columns loaded.
Actually tying this to the handling of projections might be a separate issue, although nobody would complain if it gets implemented with this one.