Jakarta Commons DbUtils

DataSource ds = // somehow get DataSource;

// Step 1.
QueryRunner run = new QueryRunner(ds);

// Step 2.
ResultSetHandler h = new BeanHandler(Person.class);

// Step 3.
Person p = (Person) run.query("SELECT * FROM Person WHERE name=?", "John Doe", h);

http://jakarta.apache.org/commons/dbutils/examples.htmlより。
このサンプルって、1レコードだけ返すSELECTですよね。複数件返すSELECT文の場合はどうなるんだろう?
"Persons"のようなListっぽいデータ格納クラスを作れってことなのかな??
1レコードずつfetchしながら別の処理を行いたい場合は、BeanHandlerのもう1つのコンストラクタを使えば良いのかな???
そうだとすると、微妙な使い勝手のような気が。。。コードの見通しが悪くないですかい!?