#716 - Remove createNamedQuery() and createQuery(Class<T> beanType, String query) ... use criteria API, query beans and RawSql

This commit is contained in:
Robin Bygrave
2016-05-20 22:13:58 +12:00
parent a20822a9e1
commit 11d623cb69
58 changed files with 56 additions and 3578 deletions
@@ -3,6 +3,8 @@ package com.avaje.tests.rawsql;
import com.avaje.ebean.BaseTestCase;
import com.avaje.ebean.Ebean;
import com.avaje.ebean.Query;
import com.avaje.ebean.RawSql;
import com.avaje.ebean.RawSqlBuilder;
import com.avaje.tests.model.basic.OrderAggregate;
import com.avaje.tests.model.basic.OrderDetail;
import com.avaje.tests.model.basic.ResetBasicData;
@@ -20,12 +22,14 @@ public class TestOrderReportTotal extends BaseTestCase {
ResetBasicData.reset();
RawSql rawSql = getRawSql();
Query<OrderAggregate> query = Ebean.createQuery(OrderAggregate.class);
List<OrderAggregate> list = query.findList();
List<OrderAggregate> list = query.setRawSql(rawSql).findList();
assertNotNull(list);
Query<OrderAggregate> q2 = Ebean.createQuery(OrderAggregate.class);
Query<OrderAggregate> q2 = Ebean.createQuery(OrderAggregate.class).setRawSql(rawSql);
q2.where().gt("id", 1);
q2.having().gt("totalItems", 1);
@@ -34,6 +38,15 @@ public class TestOrderReportTotal extends BaseTestCase {
}
private RawSql getRawSql() {
String sql =
"select order_id, count(*) as totalItems, sum(order_qty*unit_price) as totalAmount \n" +
"from o_order_detail \n" +
"group by order_id";
return RawSqlBuilder.parse(sql).columnMapping("order_id", "order.id").create();
}
@Test
public void testOrderDetailCount() {