diff --git a/src/main/java/io/ebean/DtoQuery.java b/src/main/java/io/ebean/DtoQuery.java index 6944e482a..bb2fa43ab 100644 --- a/src/main/java/io/ebean/DtoQuery.java +++ b/src/main/java/io/ebean/DtoQuery.java @@ -77,12 +77,29 @@ public interface DtoQuery { Optional findOneOrEmpty(); /** - * The same as bind for named parameters. + * Bind all the parameters using index positions. + *

+ * Binds each parameter moving the index position each time. + *

+ * A convenience for multiple calls to {@link #setParameter(Object)} + */ + DtoQuery setParameters(Object... value); + + /** + * Bind the next parameter using index position. + *

+ * Bind the parameter using index position starting at 1 and incrementing. + *

+ */ + DtoQuery setParameter(Object value); + + /** + * Bind the named parameter. */ DtoQuery setParameter(String name, Object value); /** - * The same as bind for positioned parameters. + * Bind the parameter by its index position (1 based like JDBC). */ DtoQuery setParameter(int position, Object value); diff --git a/src/main/java/io/ebean/Query.java b/src/main/java/io/ebean/Query.java index 49ab09832..826b13b1e 100644 --- a/src/main/java/io/ebean/Query.java +++ b/src/main/java/io/ebean/Query.java @@ -1183,6 +1183,30 @@ public interface Query { */ Query setParameter(int position, Object value); + /** + * Bind the next positioned parameter. + * + *

{@code
+   *
+   * // a query with a positioned parameters
+   * String oql = "where status = ? and name = ?";
+   *
+   * List list = DB.createQuery(Order.class, oql)
+   *   .setParameter(OrderStatus.NEW)
+   *   .setParameter("Rob")
+   *   .findList();
+   *
+   * }
+ */ + Query setParameter(Object value); + + /** + * Bind all the positioned parameters. + *

+ * A convenience for multiple calls to {@link #setParameter(Object)} + */ + Query setParameters(Object... values); + /** * Set the Id value to query. This is used with findOne(). *

diff --git a/src/main/java/io/ebean/SqlQuery.java b/src/main/java/io/ebean/SqlQuery.java index a35ef7eb4..e0a834867 100644 --- a/src/main/java/io/ebean/SqlQuery.java +++ b/src/main/java/io/ebean/SqlQuery.java @@ -131,7 +131,7 @@ public interface SqlQuery extends Serializable { * String sql = "select max(unit_price) from o_order_detail where order_qty > ?"; * * BigDecimal maxPrice = DB.sqlQuery(sql) - * .setParameter(1, 2) + * .setParameter(42) * .findSingleAttribute(BigDecimal.class); * * } @@ -171,31 +171,24 @@ public interface SqlQuery extends Serializable { * " where unit_price > ? " + * " order by (unit_price * order_qty) desc"; * - * // * List lineAmounts = * DB.sqlQuery(sql) - * .setParameter(1, 3) + * .setParameter(42) * .findSingleAttributeList(BigDecimal.class); * * } * *

* The attributeType can be any scalar type that Ebean supports (includes javax time types, Joda types etc). - *

* * @param attributeType The type of the returned value */ List findSingleAttributeList(Class attributeType); - /** - * The same as bind for named parameters. - */ - SqlQuery setParameter(String name, Object value); - /** * Set one of more positioned parameters. *

- * This is a convenient alternative to multiple calls setParameter(). + * This is a convenient alternative to multiple calls to {@link #setParameter(Object)}. * *

{@code
    *
@@ -203,27 +196,67 @@ public interface SqlQuery extends Serializable {
    *
    *   List list =
    *     DB.sqlQuery(sql)
-   *       .setParams("Rob", Status.NEW)
+   *       .setParameters("Rob", Status.NEW)
    *       .findList();
    *
    *
-   *   // is the same as ...
+   *   // effectively the same as ...
+   *
+   *       .setParameter("Rob")
+   *       .setParameter("Status.NEW)
+   *
+   *   // and ...
    *
-   *   List list =
-   *     DB.sqlQuery(sql)
    *       .setParameter(1, "Rob")
    *       .setParameter(2, "Status.NEW)
-   *       .findList();
    *
    * }
*/ + SqlQuery setParameters(Object... values); + + /** + * Deprecated migrate to setParameters(Object... values) + */ + @Deprecated SqlQuery setParams(Object... values); /** - * The same as bind for positioned parameters. + * Set the next bind parameter by position. + *
{@code
+   *
+   *   String sql = "select id, name from customer where name like ? and status = ?";
+   *
+   *   List list =
+   *     DB.sqlQuery(sql)
+   *       .setParameter("Rob")
+   *       .setParameter("Status.NEW)
+   *       .findList();
+   *
+   *   // the same as ...
+   *
+   *       .setParameters("Rob", Status.NEW)
+   *
+   *   // and ...
+   *
+   *       .setParameter(1, "Rob")
+   *       .setParameter(2, "Status.NEW)
+   *
+   * }
+ * + * @param value The value to bind + */ + SqlQuery setParameter(Object value); + + /** + * Bind the parameter by its index position (1 based like JDBC). */ SqlQuery setParameter(int position, Object value); + /** + * Bind the named parameter value. + */ + SqlQuery setParameter(String name, Object value); + /** * Set the index of the first row of the results to return. */ diff --git a/src/main/java/io/ebean/SqlUpdate.java b/src/main/java/io/ebean/SqlUpdate.java index 3a42038af..2669ed224 100644 --- a/src/main/java/io/ebean/SqlUpdate.java +++ b/src/main/java/io/ebean/SqlUpdate.java @@ -239,28 +239,47 @@ public interface SqlUpdate { * String sql = "insert into audit_log (id, name, version) values (?,?,?)"; * * DB.sqlUpdate(sql) - * .setParams(UUID.randomUUID(), "Hello", 1) + * .setParameters(UUID.randomUUID(), "Hello", 1) * .executeNow(); * * * // is the same as ... * * DB.sqlUpdate(sql) + * .setParameter(UUID.randomUUID()) + * .setParameter("Hello") + * .setParameter(1) + * .executeNow(); + * + * // which is the same as ... + * + * DB.sqlUpdate(sql) * .setParameter(1, UUID.randomUUID()) * .setParameter(2, "Hello") * .setParameter(3, 1) * .executeNow(); * * } - * */ + SqlUpdate setParameters(Object... values); + + /** + * Deprecated migrate to setParameters(Object... values). + */ + @Deprecated SqlUpdate setParams(Object... values); /** - * Set the next positioned parameter. + * Set the next bind parameter by position. * * @param value The value to bind */ + SqlUpdate setParameter(Object value); + + /** + * Deprecated migrate to setParameter(value). + */ + @Deprecated SqlUpdate setNextParameter(Object value); /** diff --git a/src/main/java/io/ebeaninternal/api/BindParams.java b/src/main/java/io/ebeaninternal/api/BindParams.java index 5490164e3..a45d98e6d 100644 --- a/src/main/java/io/ebeaninternal/api/BindParams.java +++ b/src/main/java/io/ebeaninternal/api/BindParams.java @@ -38,6 +38,11 @@ public class BindParams implements Serializable { */ private String bindHash; + /** + * Helper to add positioned parameters in order. + */ + private int addPos; + public BindParams() { } @@ -156,6 +161,19 @@ public class BindParams implements Serializable { p.setOutType(outType); } + public void setNextParameters(Object... values) { + for (Object value : values) { + setNextParameter(value); + } + } + + /** + * Bind the next positioned parameter. + */ + public void setNextParameter(Object value) { + setParameter(++addPos, value); + } + /** * Using position set the In value of a parameter. Note that for nulls you * must use setNullParameter. diff --git a/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java b/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java index 65dc9d762..c516e730e 100644 --- a/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java +++ b/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java @@ -265,6 +265,16 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { @Override public SqlUpdate setParams(Object... values) { + return setParameters(values); + } + + @Override + public SqlUpdate setNextParameter(Object value) { + return setParameter(value); + } + + @Override + public SqlUpdate setParameters(Object... values) { for (Object value : values) { setParameter(++addPos, value); } @@ -272,7 +282,7 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { } @Override - public SqlUpdate setNextParameter(Object value) { + public SqlUpdate setParameter(Object value) { setParameter(++addPos, value); return this; } @@ -296,7 +306,6 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { @Override public SqlUpdate setParameter(int position, Object value) { - if (value instanceof Collection) { String bindLiteral = "?" + position; int pos = baseSql.indexOf(bindLiteral); @@ -317,8 +326,7 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { @Override public SqlUpdate setNullParameter(int position, int jdbcType) { - bindParams.setNullParameter(bindExpansion + position, jdbcType); - return this; + return setNull(position, jdbcType); } @Override @@ -335,8 +343,7 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { @Override public SqlUpdate setNullParameter(String name, int jdbcType) { - bindParams.setNullParameter(name, jdbcType); - return this; + return setNull(name, jdbcType); } /** diff --git a/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptor.java b/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptor.java index 3cbdfa6aa..74a95e39e 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptor.java +++ b/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptor.java @@ -927,7 +927,7 @@ public class BeanDescriptor implements BeanType, STreeType { public void bindElementValue(SqlUpdate insert, Object value) { EntityBean bean = (EntityBean) value; for (BeanProperty property : propertiesBaseScalar) { - insert.setNextParameter(property.getValue(bean)); + insert.setParameter(property.getValue(bean)); } } @@ -1090,7 +1090,7 @@ public class BeanDescriptor implements BeanType, STreeType { Object[] bindValues = idBinder.getBindValues(id); for (Object bindValue : bindValues) { - sqlDelete.setNextParameter(bindValue); + sqlDelete.setParameter(bindValue); } return sqlDelete; diff --git a/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorElementScalar.java b/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorElementScalar.java index 715bde03b..454f5f58c 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorElementScalar.java +++ b/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorElementScalar.java @@ -26,7 +26,7 @@ class BeanDescriptorElementScalar extends BeanDescriptorElement { @Override public void bindElementValue(SqlUpdate insert, Object value) { - insert.setNextParameter(value); + insert.setParameter(value); } @Override diff --git a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssoc.java b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssoc.java index 8aa6330ad..7483dc462 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssoc.java +++ b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssoc.java @@ -539,12 +539,12 @@ public abstract class BeanPropertyAssoc extends BeanProperty implements STree void bindParentIds(DefaultSqlUpdate delete, List parentIds) { if (isExportedSimple()) { - delete.setNextParameter(new MultiValueWrapper(parentIds)); + delete.setParameter(new MultiValueWrapper(parentIds)); } else { // embedded ids etc List bindValues = flattenParentIds(parentIds); for (Object bindValue : bindValues) { - delete.setNextParameter(bindValue); + delete.setParameter(bindValue); } } } @@ -552,12 +552,12 @@ public abstract class BeanPropertyAssoc extends BeanProperty implements STree void bindParentId(DefaultSqlUpdate sqlUpd, Object parentId) { if (isExportedSimple()) { - sqlUpd.setNextParameter(parentId); + sqlUpd.setParameter(parentId); return; } EntityBean parent = (EntityBean) parentId; for (ExportedProperty exportedProperty : exportedProperties) { - sqlUpd.setNextParameter(exportedProperty.getValue(parent)); + sqlUpd.setParameter(exportedProperty.getValue(parent)); } } diff --git a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssocMany.java b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssocMany.java index 48e12475e..39c043922 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssocMany.java +++ b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyAssocMany.java @@ -816,7 +816,7 @@ public class BeanPropertyAssocMany extends BeanPropertyAssoc implements ST parentBean = (EntityBean) idProp.getValue(parentBean); } for (ExportedProperty exportedProperty : exportedProperties) { - sql.setNextParameter(exportedProperty.getValue(parentBean)); + sql.setParameter(exportedProperty.getValue(parentBean)); } importedId.bindImport(sql, other); } diff --git a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java index a66d996b1..d73574379 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java +++ b/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java @@ -15,7 +15,7 @@ public class BeanPropertySimpleCollection extends BeanPropertyAssocMany { @Override public void bindElementValue(SqlUpdate insert, Object value) { - insert.setNextParameter(value); + insert.setParameter(value); } @Override diff --git a/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderEmbedded.java b/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderEmbedded.java index f4db0904e..b67153a22 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderEmbedded.java +++ b/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderEmbedded.java @@ -275,7 +275,7 @@ public final class IdBinderEmbedded implements IdBinder { public void bindId(DefaultSqlUpdate sqlUpdate, Object value) { for (BeanProperty prop : props) { Object embFieldValue = prop.getValue((EntityBean) value); - sqlUpdate.setNextParameter(embFieldValue); + sqlUpdate.setParameter(embFieldValue); } } diff --git a/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderSimple.java b/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderSimple.java index f9ba347e9..9ae9e1e88 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderSimple.java +++ b/src/main/java/io/ebeaninternal/server/deploy/id/IdBinderSimple.java @@ -146,7 +146,7 @@ public final class IdBinderSimple implements IdBinder { @Override public void addIdInBindValues(DefaultSqlUpdate sqlUpdate, Collection ids) { - sqlUpdate.setNextParameter(new MultiValueWrapper(ids)); + sqlUpdate.setParameter(new MultiValueWrapper(ids)); } @Override @@ -171,7 +171,7 @@ public final class IdBinderSimple implements IdBinder { @Override public void bindId(DefaultSqlUpdate sqlUpdate, Object value) { - sqlUpdate.setNextParameter(value); + sqlUpdate.setParameter(value); } @Override diff --git a/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdEmbedded.java b/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdEmbedded.java index d22916da3..537575ae8 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdEmbedded.java +++ b/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdEmbedded.java @@ -155,7 +155,7 @@ public class ImportedIdEmbedded implements ImportedId { } for (ImportedIdSimple anImported : imported) { Object scalarValue = anImported.foreignProperty.getValue(embeddedId); - sql.setNextParameter(scalarValue); + sql.setParameter(scalarValue); } } diff --git a/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdSimple.java b/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdSimple.java index a71414a76..ea9844ec1 100644 --- a/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdSimple.java +++ b/src/main/java/io/ebeaninternal/server/deploy/id/ImportedIdSimple.java @@ -131,7 +131,7 @@ public final class ImportedIdSimple implements ImportedId, Comparable entry : entries) { final SpiSqlUpdate sqlInsert = proto.copy(); - sqlInsert.setNextParameter(parentId); - sqlInsert.setNextParameter(entry.getKey()); + sqlInsert.setParameter(parentId); + sqlInsert.setParameter(entry.getKey()); many.bindElementValue(sqlInsert, entry.getValue()); persister.addToFlushQueueLast(sqlInsert, transaction); } diff --git a/src/main/java/io/ebeaninternal/server/query/DefaultFetchGroupQuery.java b/src/main/java/io/ebeaninternal/server/query/DefaultFetchGroupQuery.java index 5a617a476..6bdbd9baf 100644 --- a/src/main/java/io/ebeaninternal/server/query/DefaultFetchGroupQuery.java +++ b/src/main/java/io/ebeaninternal/server/query/DefaultFetchGroupQuery.java @@ -383,6 +383,16 @@ class DefaultFetchGroupQuery implements SpiFetchGroupQuery { throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup"); } + @Override + public Query setParameter(Object value) { + throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup"); + } + + @Override + public Query setParameters(Object... values) { + throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup"); + } + @Override public Query setId(Object id) { throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup"); diff --git a/src/main/java/io/ebeaninternal/server/querydefn/DefaultDtoQuery.java b/src/main/java/io/ebeaninternal/server/querydefn/DefaultDtoQuery.java index 8607909ad..12d5545e0 100644 --- a/src/main/java/io/ebeaninternal/server/querydefn/DefaultDtoQuery.java +++ b/src/main/java/io/ebeaninternal/server/querydefn/DefaultDtoQuery.java @@ -142,6 +142,26 @@ public class DefaultDtoQuery implements SpiDtoQuery { return this; } + @Override + public DtoQuery setParameters(Object... values) { + if (ormQuery != null) { + ormQuery.setParameters(values); + } else { + bindParams.setNextParameters(values); + } + return this; + } + + @Override + public DtoQuery setParameter(Object value) { + if (ormQuery != null) { + ormQuery.setParameter(value); + } else { + bindParams.setNextParameter(value); + } + return this; + } + @Override public String toString() { return "DtoQuery [" + sql + "]"; diff --git a/src/main/java/io/ebeaninternal/server/querydefn/DefaultOrmQuery.java b/src/main/java/io/ebeaninternal/server/querydefn/DefaultOrmQuery.java index 03dd0fb05..9d361d76d 100644 --- a/src/main/java/io/ebeaninternal/server/querydefn/DefaultOrmQuery.java +++ b/src/main/java/io/ebeaninternal/server/querydefn/DefaultOrmQuery.java @@ -1596,6 +1596,24 @@ public class DefaultOrmQuery implements SpiQuery { return server.findPagedList(this, transaction); } + @Override + public DefaultOrmQuery setParameter(Object value) { + if (bindParams == null) { + bindParams = new BindParams(); + } + bindParams.setNextParameter(value); + return this; + } + + @Override + public DefaultOrmQuery setParameters(Object... values) { + if (bindParams == null) { + bindParams = new BindParams(); + } + bindParams.setNextParameters(values); + return this; + } + /** * Set an ordered bind parameter according to its position. Note that the position starts at 1 to * be consistent with JDBC PreparedStatement. You need to set a parameter value for each ? you @@ -1615,7 +1633,6 @@ public class DefaultOrmQuery implements SpiQuery { */ @Override public DefaultOrmQuery setParameter(String name, Object value) { - if (namedParams != null) { ONamedParam param = namedParams.get(name); if (param != null) { diff --git a/src/main/java/io/ebeaninternal/server/querydefn/DefaultRelationalQuery.java b/src/main/java/io/ebeaninternal/server/querydefn/DefaultRelationalQuery.java index 5dfcd4398..2c21b7b18 100644 --- a/src/main/java/io/ebeaninternal/server/querydefn/DefaultRelationalQuery.java +++ b/src/main/java/io/ebeaninternal/server/querydefn/DefaultRelationalQuery.java @@ -34,11 +34,6 @@ public class DefaultRelationalQuery implements SpiSqlQuery { private int bufferFetchSizeHint; - /** - * Helper to add positioned parameters in order. - */ - private int addPos; - /** * Bind parameters when using the query language. */ @@ -113,10 +108,20 @@ public class DefaultRelationalQuery implements SpiSqlQuery { } @Override + @Deprecated public DefaultRelationalQuery setParams(Object... values) { - for (Object value : values) { - setParameter(++addPos, value); - } + return setParameters(values); + } + + @Override + public DefaultRelationalQuery setParameters(Object... values) { + bindParams.setNextParameters(values); + return this; + } + + @Override + public DefaultRelationalQuery setParameter(Object value) { + bindParams.setNextParameter(value); return this; } diff --git a/src/test/java/io/ebean/DtoQueryFromOrmTest.java b/src/test/java/io/ebean/DtoQueryFromOrmTest.java index 818eb6906..5379094e1 100644 --- a/src/test/java/io/ebean/DtoQueryFromOrmTest.java +++ b/src/test/java/io/ebean/DtoQueryFromOrmTest.java @@ -276,7 +276,7 @@ public class DtoQueryFromOrmTest extends BaseTestCase { ResetBasicData.reset(); DB.sqlUpdate("update contact set is_member=? where last_name like ?") - .setParams(true, "B%") + .setParameters(true, "B%") .execute(); final List contacts = diff --git a/src/test/java/io/ebean/DtoQueryTest.java b/src/test/java/io/ebean/DtoQueryTest.java index 8f325ea75..3dde3ea94 100644 --- a/src/test/java/io/ebean/DtoQueryTest.java +++ b/src/test/java/io/ebean/DtoQueryTest.java @@ -9,6 +9,7 @@ import org.ebeantest.LoggedSqlCollector; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.tests.model.basic.Customer; import org.tests.model.basic.ResetBasicData; import java.util.Arrays; @@ -113,6 +114,31 @@ public class DtoQueryTest extends BaseTestCase { assertThat(empty).isNull(); } + @Test + public void setParameter() { + ResetBasicData.reset(); + + final List list = + server().findDto(DCust.class, "select id, name from o_customer where id > ? and name like ? and status = ?") + .setParameter(0) + .setParameter("Rob%") + .setParameter(Customer.Status.NEW) + .findList(); + + assertThat(list).isNotEmpty(); + } + + @Test + public void setParameters() { + ResetBasicData.reset(); + + final List list = + server().findDto(DCust.class, "select id, name from o_customer where id > ? and name like ? and status = ?") + .setParameters(0, "Rob%", Customer.Status.NEW) + .findList(); + + assertThat(list).isNotEmpty(); + } @ForPlatform(Platform.POSTGRES) @Test @@ -123,7 +149,7 @@ public class DtoQueryTest extends BaseTestCase { List ids = Arrays.asList(1, 2); List list = server().findDto(DCust.class, "select id, name from o_customer where id = any(?)") - .setParameter(1, ids) + .setParameter(ids) .findList(); assertThat(list).isNotEmpty(); @@ -149,7 +175,7 @@ public class DtoQueryTest extends BaseTestCase { assertThat(list).isNotEmpty(); - list = server().createSqlQuery("select id, name from o_customer where id in (:idList)") + list = server().sqlQuery("select id, name from o_customer where id in (:idList)") .setParameter("idList", ids) .findList(); diff --git a/src/test/java/io/ebean/NamedDtoQueryTest.java b/src/test/java/io/ebean/NamedDtoQueryTest.java index 829518034..cc0810974 100644 --- a/src/test/java/io/ebean/NamedDtoQueryTest.java +++ b/src/test/java/io/ebean/NamedDtoQueryTest.java @@ -201,7 +201,7 @@ public class NamedDtoQueryTest extends BaseTestCase { ResetBasicData.reset(); List robs = server().createNamedDtoQuery(DCust3.class, "findByNameLike") - .setParameter(1, "Rob") + .setParameter("Rob") .setMaxRows(10) .findList(); diff --git a/src/test/java/org/tests/basic/TestTransient.java b/src/test/java/org/tests/basic/TestTransient.java index 3c59ae7fd..886695bae 100644 --- a/src/test/java/org/tests/basic/TestTransient.java +++ b/src/test/java/org/tests/basic/TestTransient.java @@ -2,31 +2,35 @@ package org.tests.basic; import io.ebean.BaseTestCase; import io.ebean.BeanState; -import io.ebean.Ebean; -import org.junit.Assert; +import io.ebean.DB; import org.junit.Test; import org.tests.model.basic.Customer; -import org.tests.model.basic.ResetBasicData; + +import java.sql.Types; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; public class TestTransient extends BaseTestCase { @Test public void testTransient() { - ResetBasicData.reset(); - Customer cnew = new Customer(); cnew.setName("testTrans"); - Ebean.save(cnew); + DB.save(cnew); Integer custId = cnew.getId(); - Customer c = Ebean.find(Customer.class).setAutoTune(false).setId(custId).findOne(); + Customer c = DB.find(Customer.class).setId(custId).findOne(); - Assert.assertNotNull(c); + assertNotNull(c); - BeanState beanState = Ebean.getBeanState(c); - Assert.assertFalse("not new or dirty as transient", beanState.isNewOrDirty()); + BeanState beanState = DB.getBeanState(c); + assertFalse("not new or dirty as transient", beanState.isNewOrDirty()); c.getLock().tryLock(); try { @@ -36,33 +40,59 @@ public class TestTransient extends BaseTestCase { } Boolean selected = c.getSelected(); - Assert.assertNotNull(selected); + assertNotNull(selected); - Assert.assertFalse("not new or dirty as transient", beanState.isNewOrDirty()); + assertFalse("not new or dirty as transient", beanState.isNewOrDirty()); - Ebean.save(c); + DB.save(c); selected = c.getSelected(); - Assert.assertNotNull(selected); + assertNotNull(selected); c.setName("Modified"); - Assert.assertTrue("dirty now", beanState.isNewOrDirty()); + assertTrue("dirty now", beanState.isNewOrDirty()); selected = c.getSelected(); - Assert.assertNotNull(selected); + assertNotNull(selected); - Ebean.save(c); - Assert.assertFalse("Not dirty after save", beanState.isNewOrDirty()); + DB.save(c); + assertFalse("Not dirty after save", beanState.isNewOrDirty()); selected = c.getSelected(); - Assert.assertNotNull(selected); + assertNotNull(selected); - String updateStmt = "update customer set name = 'testTrans2' where id = :id"; - int rows = Ebean.createUpdate(Customer.class, updateStmt).set("id", custId).execute(); + String updateStmt = "update customer set smallnote = 'testTrans2' where id = :id"; + int rows = DB.createUpdate(Customer.class, updateStmt) + .setParameter("id", custId).execute(); + assertEquals(1, rows); + assertEquals("testTrans2", findNote(custId)); - Assert.assertTrue("changed name back", 1 == rows); + rows = DB.createUpdate(Customer.class, "update customer set smallnote = ? where id = ?") + .setNull(1, Types.VARCHAR) + .setParameter(2, custId).execute(); + assertEquals(1, rows); + assertNull(findNote(custId)); + + rows = DB.createUpdate(Customer.class, "update customer set smallnote = ? where id = ?") + .setParameter(1, "Foo") + .setParameter(2, custId).execute(); + assertEquals(1, rows); + assertEquals("Foo", findNote(custId)); + + rows = DB.createUpdate(Customer.class, "update customer set smallnote = :name where id = :id") + .setNullParameter("name", Types.VARCHAR) + .setParameter("id", custId).execute(); + assertEquals(1, rows); + assertNull(findNote(custId)); // cleanup - Ebean.delete(Customer.class, custId); + DB.delete(Customer.class, custId); } + + private String findNote(Integer custId) { + return DB.sqlQuery("select smallnote from o_customer where id = ?") + .setParameter(custId) + .findSingleAttribute(String.class); + } + } diff --git a/src/test/java/org/tests/batchinsert/TestBatchInsertSimple.java b/src/test/java/org/tests/batchinsert/TestBatchInsertSimple.java index 0f3c20332..ab7ec9c0f 100644 --- a/src/test/java/org/tests/batchinsert/TestBatchInsertSimple.java +++ b/src/test/java/org/tests/batchinsert/TestBatchInsertSimple.java @@ -220,7 +220,7 @@ public class TestBatchInsertSimple extends BaseTestCase { // don't write code like the above but use bind values like: try (Transaction txn = DB.beginTransaction()) { DB.sqlUpdate("update ut_master set name=? where id=?") - .setParams("DoNotDoThisPlease", 999999999) + .setParameters("DoNotDoThisPlease", 999999999) .addBatch(); txn.commit(); diff --git a/src/test/java/org/tests/cache/TestQueryCacheTableDependency.java b/src/test/java/org/tests/cache/TestQueryCacheTableDependency.java index 8ee240bd0..4403aa885 100644 --- a/src/test/java/org/tests/cache/TestQueryCacheTableDependency.java +++ b/src/test/java/org/tests/cache/TestQueryCacheTableDependency.java @@ -77,9 +77,8 @@ public class TestQueryCacheTableDependency extends BaseTestCase { .findCount(); assertThat(custs).isEqualTo(1); - Ebean.createSqlUpdate("update o_address set line_2=? where line_2=?") - .setNextParameter("St Lucky3") - .setNextParameter("St Lucky2") + DB.sqlUpdate("update o_address set line_2=? where line_2=?") + .setParameters("St Lucky3", "St Lucky2") .execute(); custs = Ebean.find(Customer.class).setUseQueryCache(true).setReadOnly(true) diff --git a/src/test/java/org/tests/inheritance/TestInheritanceRawSql.java b/src/test/java/org/tests/inheritance/TestInheritanceRawSql.java index a7cd1a4ab..040a5e424 100644 --- a/src/test/java/org/tests/inheritance/TestInheritanceRawSql.java +++ b/src/test/java/org/tests/inheritance/TestInheritanceRawSql.java @@ -85,7 +85,7 @@ public class TestInheritanceRawSql extends BaseTestCase { Vehicle veh = Ebean.find(Vehicle.class) .setRawSql(rawSql) - .setParameter(1, truck.getId()) + .setParameter(truck.getId()) .findOne(); assertThat(veh).isNotNull(); @@ -104,7 +104,7 @@ public class TestInheritanceRawSql extends BaseTestCase { Vehicle veh2 = Ebean.find(Vehicle.class) .setRawSql(rawSql2) - .setParameter(1, truck.getId()) + .setParameter(truck.getId()) .findOne(); assertThat(veh2).isNotNull(); diff --git a/src/test/java/org/tests/model/basic/finder/CustomerFinder.java b/src/test/java/org/tests/model/basic/finder/CustomerFinder.java index 905b6be19..c76728fca 100644 --- a/src/test/java/org/tests/model/basic/finder/CustomerFinder.java +++ b/src/test/java/org/tests/model/basic/finder/CustomerFinder.java @@ -47,7 +47,7 @@ public class CustomerFinder extends Finder { public List namesStartingWith(String name) { return nativeSql("select name from o_customer where name like ? order by name") - .setParameter(1, name+"%") + .setParameter(name + "%") .findSingleAttributeList(); } diff --git a/src/test/java/org/tests/model/basic/xtra/OptimisticLockExceptionThrowingDao.java b/src/test/java/org/tests/model/basic/xtra/OptimisticLockExceptionThrowingDao.java index 7e37f755a..fbaeac4d2 100644 --- a/src/test/java/org/tests/model/basic/xtra/OptimisticLockExceptionThrowingDao.java +++ b/src/test/java/org/tests/model/basic/xtra/OptimisticLockExceptionThrowingDao.java @@ -22,7 +22,7 @@ public class OptimisticLockExceptionThrowingDao { inMethodTransaction = server.currentTransaction(); Transaction t = server.createTransaction(); - SqlUpdate u = server.createSqlUpdate("update e_basicver set last_update = last_update+1 where id = ?"); + SqlUpdate u = server.sqlUpdate("update e_basicver set last_update = last_update+1 where id = ?"); u.setParameter(1, v.getId()); int count = server.execute(u, t); Assert.assertEquals(1, count); diff --git a/src/test/java/org/tests/o2m/jointable/TestOneToManyJoinTableNoTableName.java b/src/test/java/org/tests/o2m/jointable/TestOneToManyJoinTableNoTableName.java index 610a63665..bd6e0a65f 100644 --- a/src/test/java/org/tests/o2m/jointable/TestOneToManyJoinTableNoTableName.java +++ b/src/test/java/org/tests/o2m/jointable/TestOneToManyJoinTableNoTableName.java @@ -49,7 +49,7 @@ public class TestOneToManyJoinTableNoTableName extends BaseTestCase { } int intersectionRows = DB.sqlQuery("select count(*) as total from mkeygroup_monkey where mkeygroup_pid = ?") - .setParameter(1, troop.getPid()) + .setParameter(troop.getPid()) .findOne() .getInteger("total"); diff --git a/src/test/java/org/tests/persistencecontext/TestPersistenceContextQueryScope.java b/src/test/java/org/tests/persistencecontext/TestPersistenceContextQueryScope.java index 2221a7424..6e80dc3d4 100644 --- a/src/test/java/org/tests/persistencecontext/TestPersistenceContextQueryScope.java +++ b/src/test/java/org/tests/persistencecontext/TestPersistenceContextQueryScope.java @@ -1,8 +1,8 @@ package org.tests.persistencecontext; import io.ebean.BaseTestCase; +import io.ebean.DB; import io.ebean.Ebean; -import io.ebean.SqlUpdate; import org.junit.Test; import org.tests.model.basic.EBasicVer; @@ -27,10 +27,11 @@ public class TestPersistenceContextQueryScope extends BaseTestCase { EBasicVer bean1 = Ebean.find(EBasicVer.class, bean.getId()); // do an update of the name in the DB - SqlUpdate sqlUpdate = Ebean.createSqlUpdate("update e_basicver set name=? where id=?"); - sqlUpdate.setNextParameter("second"); - sqlUpdate.setNextParameter(bean.getId()); - int rowCount = sqlUpdate.execute(); + int rowCount = DB.sqlUpdate("update e_basicver set name=? where id=?") + .setParameter("second") + .setParameter(bean.getId()) + .execute(); + assertEquals(1, rowCount); // fetch the bean again... but doesn't hit DB as it diff --git a/src/test/java/org/tests/query/TestQueryFindNative.java b/src/test/java/org/tests/query/TestQueryFindNative.java index a84fd4e13..ff4acac9d 100644 --- a/src/test/java/org/tests/query/TestQueryFindNative.java +++ b/src/test/java/org/tests/query/TestQueryFindNative.java @@ -46,7 +46,7 @@ public class TestQueryFindNative extends BaseTestCase { int rowCount = server() .findNative(Contact.class, sql) - .setParameter(1, "J%") + .setParameter("J%") .findCount(); List nativeIds = @@ -72,7 +72,7 @@ public class TestQueryFindNative extends BaseTestCase { PagedList pagedList = server() .findNative(Contact.class, sql) - .setParameter(1, "J%") + .setParameter("J%") .setMaxRows(100) .findPagedList(); @@ -99,7 +99,7 @@ public class TestQueryFindNative extends BaseTestCase { PagedList pagedList = server() .findNative(Contact.class, sql) - .setParameter(1, 100) + .setParameter(100) .setMaxRows(100) .findPagedList(); @@ -159,7 +159,7 @@ public class TestQueryFindNative extends BaseTestCase { List contacts = server() .findNative(Contact.class, sql) - .setParameter(1, "Rob") + .setParameter("Rob") .findList(); @@ -206,8 +206,8 @@ public class TestQueryFindNative extends BaseTestCase { LoggedSqlCollector.start(); List result = DB.findNative(Customer.class, sql) - .setParameter(1, LocalDate.now()) - .setParameter(2, LocalDate.now()) + .setParameter(LocalDate.now()) + .setParameter(LocalDate.now()) .setFirstRow(1) .setMaxRows(10) .findList(); diff --git a/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java b/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java index 285ea5485..cd853d391 100644 --- a/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java +++ b/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java @@ -33,7 +33,7 @@ public class SqlQueryTests extends BaseTestCase { String sql = "select (unit_price * order_qty) from o_order_detail where unit_price > ? order by (unit_price * order_qty) desc"; List lineAmounts = DB.sqlQuery(sql) - .setParameter(1, 3) + .setParameter(3) .findSingleAttributeList(BigDecimal.class); assertThat(lineAmounts).isNotEmpty(); @@ -61,7 +61,7 @@ public class SqlQueryTests extends BaseTestCase { String sql = "select max(unit_price) from o_order_detail where order_qty > ?"; BigDecimal maxPrice = DB.sqlQuery(sql) - .setParameter(1, 2) + .setParameter(2) .findSingleAttribute(BigDecimal.class); assertThat(maxPrice).isNotNull(); @@ -146,7 +146,7 @@ public class SqlQueryTests extends BaseTestCase { String sql = "select id, name, status from o_customer where name = ?"; CustDto rob = DB.sqlQuery(sql) - .setParameter(1, "Rob") + .setParameter("Rob") .findOne(CUST_MAPPER); assertThat(rob.name).isEqualTo("Rob"); @@ -195,7 +195,7 @@ public class SqlQueryTests extends BaseTestCase { String sql = "select max(id) from o_customer where name != ?"; long maxId = DB.sqlQuery(sql) - .setParameter(1, "Rob") + .setParameter("Rob") .findOne((resultSet, rowNum) -> resultSet.getLong(1)); assertThat(maxId).isGreaterThan(0); diff --git a/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java b/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java index c5d093962..1fd17c8b8 100644 --- a/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java +++ b/src/test/java/org/tests/rawsql/TestInsertSqlLogging.java @@ -26,19 +26,19 @@ public class TestInsertSqlLogging extends BaseTestCase { txn.setBatchMode(true); txn.setBatchSize(2); - insert.setNextParameter(10000); - insert.setNextParameter("hello"); - insert.setNextParameter("rob"); + insert.setParameter(10000); + insert.setParameter("hello"); + insert.setParameter("rob"); insert.execute(); - insert.setNextParameter(10001); - insert.setNextParameter("goodbye"); - insert.setNextParameter("rob"); + insert.setParameter(10001); + insert.setParameter("goodbye"); + insert.setParameter("rob"); insert.execute(); - insert.setNextParameter(10002); - insert.setNextParameter("chow"); - insert.setNextParameter("bob"); + insert.setParameter(10002); + insert.setParameter("chow"); + insert.setParameter("bob"); insert.execute(); txn.commit(); @@ -55,19 +55,19 @@ public class TestInsertSqlLogging extends BaseTestCase { try (Transaction txn = Ebean.beginTransaction()) { - insert.setNextParameter(10000); - insert.setNextParameter("hello"); - insert.setNextParameter("rob"); + insert.setParameter(10000); + insert.setParameter("hello"); + insert.setParameter("rob"); insert.addBatch(); - insert.setNextParameter(10001); - insert.setNextParameter("goodbye"); - insert.setNextParameter("rob"); + insert.setParameter(10001); + insert.setParameter("goodbye"); + insert.setParameter("rob"); insert.addBatch(); - insert.setNextParameter(10002); - insert.setNextParameter("chow"); - insert.setNextParameter("bob"); + insert.setParameter(10002); + insert.setParameter("chow"); + insert.setParameter("bob"); insert.addBatch(); int[] rows = insert.executeBatch(); diff --git a/src/test/java/org/tests/rawsql/nativesql/TestNativeSqlBasic.java b/src/test/java/org/tests/rawsql/nativesql/TestNativeSqlBasic.java index 1ab49cda3..45e539ef9 100644 --- a/src/test/java/org/tests/rawsql/nativesql/TestNativeSqlBasic.java +++ b/src/test/java/org/tests/rawsql/nativesql/TestNativeSqlBasic.java @@ -127,7 +127,7 @@ public class TestNativeSqlBasic extends BaseTestCase { String nativeSql = "select id, name from o_customer where id > ?"; List customers = Ebean.findNative(Customer.class, nativeSql) - .setParameter(1, 1) + .setParameter(1) .findList(); for (Customer customer : customers) { @@ -191,7 +191,7 @@ public class TestNativeSqlBasic extends BaseTestCase { String nativeSql = "select * from o_customer where id > ?"; List customers = Ebean.findNative(Customer.class, nativeSql) - .setParameter(1, 1) + .setParameter(1) .fetchQuery("contacts") .findList(); diff --git a/src/test/java/org/tests/rawsql/nativesql/TestNativeWithEmbedded.java b/src/test/java/org/tests/rawsql/nativesql/TestNativeWithEmbedded.java index 42f7340b8..b6e4287a0 100644 --- a/src/test/java/org/tests/rawsql/nativesql/TestNativeWithEmbedded.java +++ b/src/test/java/org/tests/rawsql/nativesql/TestNativeWithEmbedded.java @@ -31,7 +31,7 @@ public class TestNativeWithEmbedded extends BaseTestCase { LoggedSqlCollector.start(); Query query = Ebean.findNative(EPerson.class, sql); - query.setParameter(1, person.getId()); + query.setParameter(person.getId()); EPerson one = query.findOne(); assertThat(one.getName()).isEqualTo("Frank"); diff --git a/src/test/java/org/tests/repository/CustomerRepository.java b/src/test/java/org/tests/repository/CustomerRepository.java index 1dfdb51b1..5d62f3fd6 100644 --- a/src/test/java/org/tests/repository/CustomerRepository.java +++ b/src/test/java/org/tests/repository/CustomerRepository.java @@ -23,7 +23,7 @@ public class CustomerRepository extends BeanRepository { public Customer findMatchName(String matchName) { return nativeSql("select id, name from o_customer where name = ?") - .setParameter(1, matchName) + .setParameter(matchName) .findOne(); } diff --git a/src/test/java/org/tests/softdelete/TestSoftDeleteBasic.java b/src/test/java/org/tests/softdelete/TestSoftDeleteBasic.java index 7208b3805..4500ffcc2 100644 --- a/src/test/java/org/tests/softdelete/TestSoftDeleteBasic.java +++ b/src/test/java/org/tests/softdelete/TestSoftDeleteBasic.java @@ -94,7 +94,7 @@ public class TestSoftDeleteBasic extends BaseTestCase { Ebean.delete(bean); SqlQuery sqlQuery = DB.sqlQuery("select * from ebasic_soft_delete where id=?"); - sqlQuery.setParameter(1, bean.getId()); + sqlQuery.setParameter(bean.getId()); SqlRow sqlRow = sqlQuery.findOne(); assertThat(sqlRow).isNotNull(); diff --git a/src/test/java/org/tests/update/TestSqlUpdateBindMultipleLists.java b/src/test/java/org/tests/update/TestSqlUpdateBindMultipleLists.java index b19676f99..5219c0e80 100644 --- a/src/test/java/org/tests/update/TestSqlUpdateBindMultipleLists.java +++ b/src/test/java/org/tests/update/TestSqlUpdateBindMultipleLists.java @@ -46,7 +46,7 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { assertEquals("delete from o_customer where id in (?,?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate = Ebean.createSqlUpdate("delete from o_customer where id in (?1)"); + sqlUpdate = DB.sqlUpdate("delete from o_customer where id in (?1)"); sqlUpdate.setParameter(1, asList(9991, 9993)); sqlUpdate.execute(); @@ -77,8 +77,8 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { @Test public void positionParamsExpansion_withPrePost_usingParam() { - SqlUpdate sqlUpdate = Ebean.createSqlUpdate("delete from o_customer where id > ? and id in (?2) and id < ?"); - sqlUpdate.setParams(90, asList(9991, 9992, 9993), 91); + SqlUpdate sqlUpdate = DB.sqlUpdate("delete from o_customer where id > ? and id in (?2) and id < ?"); + sqlUpdate.setParameters(90, asList(9991, 9992, 9993), 91); sqlUpdate.execute(); assertEquals("delete from o_customer where id > ? and id in (?,?,?) and id < ?", sqlUpdate.getGeneratedSql()); @@ -104,13 +104,13 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { try (Transaction transaction = DB.beginTransaction()) { transaction.setBatchMode(true); - upd.setParams(asList(9991), asList("Foo"), asList(9994)); + upd.setParameters(asList(9991), asList("Foo"), asList(9994)); upd.execute(); - upd.setParams(asList(9991, 9992), asList("Foo", "Bar"), asList(1,2,3,4)); + upd.setParameters(asList(9991, 9992), asList("Foo", "Bar"), asList(1,2,3,4)); upd.execute(); - upd.setParams(asList(9991), asList("Foo", "Bar", "Baz"), asList(1,2)); + upd.setParameters(asList(9991), asList("Foo", "Bar", "Baz"), asList(1,2)); upd.execute(); transaction.commit(); @@ -137,13 +137,13 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { try (Transaction transaction = DB.beginTransaction()) { transaction.setBatchMode(true); - upd.setParams(asList(9991, 9992, 9993), "Foo"); + upd.setParameters(asList(9991, 9992, 9993), "Foo"); upd.execute(); - upd.setParams(asList(9991, 9992), "Bar"); + upd.setParameters(asList(9991, 9992), "Bar"); upd.execute(); - upd.setParams(asList(9991, 9992, 9999), "Baz"); + upd.setParameters(asList(9991, 9992, 9999), "Baz"); upd.execute(); transaction.commit(); @@ -158,13 +158,13 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { try (Transaction transaction = DB.beginTransaction()) { transaction.setBatchMode(true); - upd.setParams(asList(9991, 9992, 9993), "Foo"); + upd.setParameters(asList(9991, 9992, 9993), "Foo"); upd.addBatch(); - upd.setParams(asList(9991, 9992), "Bar"); + upd.setParameters(asList(9991, 9992), "Bar"); upd.addBatch(); - upd.setParams(asList(9991, 9992, 9999), "Baz"); + upd.setParameters(asList(9991, 9992, 9999), "Baz"); upd.addBatch(); transaction.commit(); @@ -183,7 +183,7 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?,?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9991, 9992), asList("rob", "jim", "sd")); + sqlUpdate.setParameters(asList(9991, 9992), asList("rob", "jim", "sd")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?) and name in (?,?,?)", sqlUpdate.getGeneratedSql()); @@ -192,12 +192,12 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9991), asList("rob", "jim")); + sqlUpdate.setParameters(asList(9991), asList("rob", "jim")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9992), asList("ro3b", "j3im")); + sqlUpdate.setParameters(asList(9992), asList("ro3b", "j3im")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?) and name in (?,?)", sqlUpdate.getGeneratedSql()); @@ -223,7 +223,7 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?,?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9991, 9992), asList("rob", "jim", "sd")); + sqlUpdate.setParameters(asList(9991, 9992), asList("rob", "jim", "sd")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?) and name in (?,?,?)", sqlUpdate.getGeneratedSql()); @@ -232,12 +232,12 @@ public class TestSqlUpdateBindMultipleLists extends BaseTestCase { sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?,?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9991), asList("rob", "jim")); + sqlUpdate.setParameters(asList(9991), asList("rob", "jim")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?) and name in (?,?)", sqlUpdate.getGeneratedSql()); - sqlUpdate.setParams(asList(9992), asList("ro3b", "j3im")); + sqlUpdate.setParameters(asList(9992), asList("ro3b", "j3im")); sqlUpdate.execute(); assertEquals("delete from o_customer where id in (?) and name in (?,?)", sqlUpdate.getGeneratedSql()); diff --git a/src/test/java/org/tests/update/TestSqlUpdateExceptions.java b/src/test/java/org/tests/update/TestSqlUpdateExceptions.java index d0f9ecff2..4bca88ea3 100644 --- a/src/test/java/org/tests/update/TestSqlUpdateExceptions.java +++ b/src/test/java/org/tests/update/TestSqlUpdateExceptions.java @@ -21,12 +21,12 @@ public class TestSqlUpdateExceptions extends BaseTestCase { UUID id = UUID.randomUUID(); - Ebean.createSqlUpdate(sql) - .setParams(id, "hi", 1) + DB.sqlUpdate(sql) + .setParameters(id, "hi", 1) .executeNow(); UUID foundId = DB.sqlQuery("select id from uuone where id = ?") - .setParams(id) + .setParameters(id) .findSingleAttribute(UUID.class); assertThat(foundId).isEqualTo(id); diff --git a/src/test/java/org/tests/update/TestSqlUpdateUpsert.java b/src/test/java/org/tests/update/TestSqlUpdateUpsert.java index 702cfc520..36b7c195b 100644 --- a/src/test/java/org/tests/update/TestSqlUpdateUpsert.java +++ b/src/test/java/org/tests/update/TestSqlUpdateUpsert.java @@ -1,6 +1,7 @@ package org.tests.update; import io.ebean.BaseTestCase; +import io.ebean.DB; import io.ebean.Ebean; import io.ebean.SqlUpdate; import io.ebean.annotation.ForPlatform; @@ -19,10 +20,10 @@ public class TestSqlUpdateUpsert extends BaseTestCase { String email = "baz@one.com"; - Object key = Ebean.createSqlUpdate(sql) + Object key = DB.sqlUpdate(sql) .setGetGeneratedKeys(true) - .setParameter(1, email) - .setParameter(2, true) + .setParameter(email) + .setParameter(true) .executeGetKey(); EPersonOnline found = Ebean.find(EPersonOnline.class, key); @@ -58,7 +59,7 @@ public class TestSqlUpdateUpsert extends BaseTestCase { String email = "foo@one.com"; - Object key = Ebean.createSqlUpdate(sql) + Object key = DB.sqlUpdate(sql) .setGetGeneratedKeys(true) .setParameter(1, email) .setParameter(2, true) @@ -72,7 +73,7 @@ public class TestSqlUpdateUpsert extends BaseTestCase { String sqlNamed = "insert into e_person_online (email, online_status, when_updated) values (:email, :online, now()) on conflict (email) do update set when_updated=now(), online_status = :online"; - SqlUpdate sqlUpdate2 = Ebean.createSqlUpdate(sqlNamed) + SqlUpdate sqlUpdate2 = DB.sqlUpdate(sqlNamed) .setGetGeneratedKeys(true) .setParameter("email", email) .setParameter("online", false); diff --git a/src/test/java/org/tests/update/TestUpdatePartial.java b/src/test/java/org/tests/update/TestUpdatePartial.java index 2d0c4466c..ac1085896 100644 --- a/src/test/java/org/tests/update/TestUpdatePartial.java +++ b/src/test/java/org/tests/update/TestUpdatePartial.java @@ -1,8 +1,8 @@ package org.tests.update; import io.ebean.BaseTestCase; +import io.ebean.DB; import io.ebean.Ebean; -import io.ebean.SqlQuery; import io.ebean.SqlRow; import org.junit.Test; import org.tests.model.basic.Customer; @@ -52,9 +52,9 @@ public class TestUpdatePartial extends BaseTestCase { } private void checkDbStatusValue(Integer custId, String dbStatus) { - SqlQuery sqlQuery = Ebean.createSqlQuery("select id, status from o_customer where id = ?"); - sqlQuery.setParameter(1, custId); - SqlRow sqlRow = sqlQuery.findOne(); + SqlRow sqlRow = DB.sqlQuery("select id, status from o_customer where id = ?") + .setParameter(custId) + .findOne(); String status = sqlRow.getString("status"); assertEquals(dbStatus, status); } diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml index 97cbf1ec9..cacd2cdc9 100644 --- a/src/test/resources/logback-test.xml +++ b/src/test/resources/logback-test.xml @@ -79,8 +79,8 @@ - - + +