The 'type' specified in a <generate> or <iterate> element must match the database table name. This makes it tedious to read data from one table and copy it to a table with a different name: each column needs to be mapped explicitely.
A consumer which overrides the entity/table name would be an easy solution, e.g. instantiated by a factory method DBSystem.inserter(String tableName) and used as
<generate source="db" type="t1" consumer="db.inserter('t2')" />