使用 Ebean(通过 Play Framework 2.1.1),我必须构建一个自制的 SQL 查询,但我希望它直接返回 a List<MyModel>
,而不是 aList<SqlRow>
我必须从结果中查询每个 id 的数据库有一个List<MyModel>
。
是否可以直接将 SqlQuery/SqlRow 转换为 Model ?
实际上,我这样做:
SqlQuery query = Ebean.createSqlQuery("SELECT id FROM MyModel WHERE ...");
List<SqlRow> rows = query.findList(); // not directly possible.
List<MyModel> results = new ArrayList<MyModel>();
for (SqlRow row : rows) {
results.add(MyModel.find.idEq(row.getLong("id)));
}
理想情况下,它会是这样的:
SqlQuery query = Ebean.createSqlQuery("SELECT id FROM MyModel WHERE ...");
List<MyModel> results = (List<MyModel>) query.findList(); // not directly possible.
这不是很有效。