3

我在我的简单项目中使用DBUtils 。我有Item实体Person类(persons以及items作为数据库中的表)。这简化了课程以更好地说明我的意思。现在我需要使用BeanListHandler获取具有登录名的项目列表。为此,我添加了login属性Item,但这是丑陋的解决方案。这样做并利用BeanListHandler的优势是否更好?

public class Person {
   private Long id;
   private String login;
}

public class Item {
   private Long id;
   private String name;
   // ... a lot more properties of item

   private Long personId;  // this is real column in "items" table
   private String login;   // UGLY (login is not in "items" table, only for BeanListHandler)
}

QueryRunner q = new QueryRunner(getDataSource());
String sql = "select i.*, p.login from items i, persons p where p.id = i.personId";
List<Item> l = (List<Item>) q.query(sql, new BeanListHandler<Item>(Item.class));
4

0 回答 0