mirror of
https://github.com/ebean-orm/ebean.git
synced 2026-10-23 12:19:09 +00:00
#1938 - API consistency add setParameters(varargs) & setParameter() - migrate from setNextParameter() and setParams()
This commit is contained in:
@@ -77,12 +77,29 @@ public interface DtoQuery<T> {
|
||||
Optional<T> findOneOrEmpty();
|
||||
|
||||
/**
|
||||
* The same as bind for named parameters.
|
||||
* Bind all the parameters using index positions.
|
||||
* <p>
|
||||
* Binds each parameter moving the index position each time.
|
||||
* <p>
|
||||
* A convenience for multiple calls to {@link #setParameter(Object)}
|
||||
*/
|
||||
DtoQuery<T> setParameters(Object... value);
|
||||
|
||||
/**
|
||||
* Bind the next parameter using index position.
|
||||
* <p>
|
||||
* Bind the parameter using index position starting at 1 and incrementing.
|
||||
* <p>
|
||||
*/
|
||||
DtoQuery<T> setParameter(Object value);
|
||||
|
||||
/**
|
||||
* Bind the named parameter.
|
||||
*/
|
||||
DtoQuery<T> setParameter(String name, Object value);
|
||||
|
||||
/**
|
||||
* The same as bind for positioned parameters.
|
||||
* Bind the parameter by its index position (1 based like JDBC).
|
||||
*/
|
||||
DtoQuery<T> setParameter(int position, Object value);
|
||||
|
||||
|
||||
@@ -1183,6 +1183,30 @@ public interface Query<T> {
|
||||
*/
|
||||
Query<T> setParameter(int position, Object value);
|
||||
|
||||
/**
|
||||
* Bind the next positioned parameter.
|
||||
*
|
||||
* <pre>{@code
|
||||
*
|
||||
* // a query with a positioned parameters
|
||||
* String oql = "where status = ? and name = ?";
|
||||
*
|
||||
* List<Order> list = DB.createQuery(Order.class, oql)
|
||||
* .setParameter(OrderStatus.NEW)
|
||||
* .setParameter("Rob")
|
||||
* .findList();
|
||||
*
|
||||
* }</pre>
|
||||
*/
|
||||
Query<T> setParameter(Object value);
|
||||
|
||||
/**
|
||||
* Bind all the positioned parameters.
|
||||
* <p>
|
||||
* A convenience for multiple calls to {@link #setParameter(Object)}
|
||||
*/
|
||||
Query<T> setParameters(Object... values);
|
||||
|
||||
/**
|
||||
* Set the Id value to query. This is used with findOne().
|
||||
* <p>
|
||||
|
||||
@@ -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);
|
||||
*
|
||||
* }</pre>
|
||||
@@ -171,31 +171,24 @@ public interface SqlQuery extends Serializable {
|
||||
* " where unit_price > ? " +
|
||||
* " order by (unit_price * order_qty) desc";
|
||||
*
|
||||
* //
|
||||
* List<BigDecimal> lineAmounts =
|
||||
* DB.sqlQuery(sql)
|
||||
* .setParameter(1, 3)
|
||||
* .setParameter(42)
|
||||
* .findSingleAttributeList(BigDecimal.class);
|
||||
*
|
||||
* }</pre>
|
||||
*
|
||||
* <p>
|
||||
* The attributeType can be any scalar type that Ebean supports (includes javax time types, Joda types etc).
|
||||
* </p>
|
||||
*
|
||||
* @param attributeType The type of the returned value
|
||||
*/
|
||||
<T> List<T> findSingleAttributeList(Class<T> attributeType);
|
||||
|
||||
/**
|
||||
* The same as bind for named parameters.
|
||||
*/
|
||||
SqlQuery setParameter(String name, Object value);
|
||||
|
||||
/**
|
||||
* Set one of more positioned parameters.
|
||||
* <p>
|
||||
* This is a convenient alternative to multiple calls setParameter().
|
||||
* This is a convenient alternative to multiple calls to {@link #setParameter(Object)}.
|
||||
*
|
||||
* <pre>{@code
|
||||
*
|
||||
@@ -203,27 +196,67 @@ public interface SqlQuery extends Serializable {
|
||||
*
|
||||
* List<SqlRow> 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<SqlRow> list =
|
||||
* DB.sqlQuery(sql)
|
||||
* .setParameter(1, "Rob")
|
||||
* .setParameter(2, "Status.NEW)
|
||||
* .findList();
|
||||
*
|
||||
* }</pre>
|
||||
*/
|
||||
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.
|
||||
* <pre>{@code
|
||||
*
|
||||
* String sql = "select id, name from customer where name like ? and status = ?";
|
||||
*
|
||||
* List<SqlRow> 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)
|
||||
*
|
||||
* }</pre>
|
||||
*
|
||||
* @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.
|
||||
*/
|
||||
|
||||
@@ -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();
|
||||
*
|
||||
* }</pre>
|
||||
*
|
||||
*/
|
||||
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);
|
||||
|
||||
/**
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -927,7 +927,7 @@ public class BeanDescriptor<T> implements BeanType<T>, 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<T> implements BeanType<T>, STreeType {
|
||||
|
||||
Object[] bindValues = idBinder.getBindValues(id);
|
||||
for (Object bindValue : bindValues) {
|
||||
sqlDelete.setNextParameter(bindValue);
|
||||
sqlDelete.setParameter(bindValue);
|
||||
}
|
||||
|
||||
return sqlDelete;
|
||||
|
||||
@@ -26,7 +26,7 @@ class BeanDescriptorElementScalar<T> extends BeanDescriptorElement<T> {
|
||||
|
||||
@Override
|
||||
public void bindElementValue(SqlUpdate insert, Object value) {
|
||||
insert.setNextParameter(value);
|
||||
insert.setParameter(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -539,12 +539,12 @@ public abstract class BeanPropertyAssoc<T> extends BeanProperty implements STree
|
||||
void bindParentIds(DefaultSqlUpdate delete, List<Object> parentIds) {
|
||||
|
||||
if (isExportedSimple()) {
|
||||
delete.setNextParameter(new MultiValueWrapper(parentIds));
|
||||
delete.setParameter(new MultiValueWrapper(parentIds));
|
||||
} else {
|
||||
// embedded ids etc
|
||||
List<Object> bindValues = flattenParentIds(parentIds);
|
||||
for (Object bindValue : bindValues) {
|
||||
delete.setNextParameter(bindValue);
|
||||
delete.setParameter(bindValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -552,12 +552,12 @@ public abstract class BeanPropertyAssoc<T> 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));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -816,7 +816,7 @@ public class BeanPropertyAssocMany<T> extends BeanPropertyAssoc<T> 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);
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ public class BeanPropertySimpleCollection<T> extends BeanPropertyAssocMany<T> {
|
||||
|
||||
@Override
|
||||
public void bindElementValue(SqlUpdate insert, Object value) {
|
||||
insert.setNextParameter(value);
|
||||
insert.setParameter(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -131,7 +131,7 @@ public final class ImportedIdSimple implements ImportedId, Comparable<ImportedId
|
||||
if (value == null) {
|
||||
throw new PersistenceException("Foreign Key value null?");
|
||||
}
|
||||
sql.setNextParameter(value);
|
||||
sql.setParameter(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -46,7 +46,7 @@ class SaveManyElementCollection extends SaveManyBase {
|
||||
Object parentId = request.getBeanId();
|
||||
for (Object value : collection) {
|
||||
final SpiSqlUpdate sqlInsert = proto.copy();
|
||||
sqlInsert.setNextParameter(parentId);
|
||||
sqlInsert.setParameter(parentId);
|
||||
many.bindElementValue(sqlInsert, value);
|
||||
persister.addToFlushQueueLast(sqlInsert, transaction);
|
||||
}
|
||||
|
||||
@@ -48,8 +48,8 @@ class SaveManyElementCollectionMap extends SaveManyBase {
|
||||
Object parentId = request.getBeanId();
|
||||
for (Map.Entry<?, ?> 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);
|
||||
}
|
||||
|
||||
@@ -383,6 +383,16 @@ class DefaultFetchGroupQuery<T> implements SpiFetchGroupQuery<T> {
|
||||
throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Query<T> setParameter(Object value) {
|
||||
throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Query<T> setParameters(Object... values) {
|
||||
throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Query<T> setId(Object id) {
|
||||
throw new RuntimeException("EB102: Only select() and fetch() clause is allowed on FetchGroup");
|
||||
|
||||
@@ -142,6 +142,26 @@ public class DefaultDtoQuery<T> implements SpiDtoQuery<T> {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DtoQuery<T> setParameters(Object... values) {
|
||||
if (ormQuery != null) {
|
||||
ormQuery.setParameters(values);
|
||||
} else {
|
||||
bindParams.setNextParameters(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DtoQuery<T> setParameter(Object value) {
|
||||
if (ormQuery != null) {
|
||||
ormQuery.setParameter(value);
|
||||
} else {
|
||||
bindParams.setNextParameter(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "DtoQuery [" + sql + "]";
|
||||
|
||||
@@ -1596,6 +1596,24 @@ public class DefaultOrmQuery<T> implements SpiQuery<T> {
|
||||
return server.findPagedList(this, transaction);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DefaultOrmQuery<T> setParameter(Object value) {
|
||||
if (bindParams == null) {
|
||||
bindParams = new BindParams();
|
||||
}
|
||||
bindParams.setNextParameter(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DefaultOrmQuery<T> 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<T> implements SpiQuery<T> {
|
||||
*/
|
||||
@Override
|
||||
public DefaultOrmQuery<T> setParameter(String name, Object value) {
|
||||
|
||||
if (namedParams != null) {
|
||||
ONamedParam param = namedParams.get(name);
|
||||
if (param != null) {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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<ContactMemberDto> contacts =
|
||||
|
||||
@@ -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<DCust> 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<DCust> 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<Integer> ids = Arrays.asList(1, 2);
|
||||
|
||||
List<DCust> 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();
|
||||
|
||||
|
||||
@@ -201,7 +201,7 @@ public class NamedDtoQueryTest extends BaseTestCase {
|
||||
ResetBasicData.reset();
|
||||
|
||||
List<DCust3> robs = server().createNamedDtoQuery(DCust3.class, "findByNameLike")
|
||||
.setParameter(1, "Rob")
|
||||
.setParameter("Rob")
|
||||
.setMaxRows(10)
|
||||
.findList();
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -47,7 +47,7 @@ public class CustomerFinder extends Finder<Integer, Customer> {
|
||||
public List<String> namesStartingWith(String name) {
|
||||
|
||||
return nativeSql("select name from o_customer where name like ? order by name")
|
||||
.setParameter(1, name+"%")
|
||||
.setParameter(name + "%")
|
||||
.findSingleAttributeList();
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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");
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -46,7 +46,7 @@ public class TestQueryFindNative extends BaseTestCase {
|
||||
|
||||
int rowCount = server()
|
||||
.findNative(Contact.class, sql)
|
||||
.setParameter(1, "J%")
|
||||
.setParameter("J%")
|
||||
.findCount();
|
||||
|
||||
List<Integer> nativeIds =
|
||||
@@ -72,7 +72,7 @@ public class TestQueryFindNative extends BaseTestCase {
|
||||
|
||||
PagedList<Contact> pagedList = server()
|
||||
.findNative(Contact.class, sql)
|
||||
.setParameter(1, "J%")
|
||||
.setParameter("J%")
|
||||
.setMaxRows(100)
|
||||
.findPagedList();
|
||||
|
||||
@@ -99,7 +99,7 @@ public class TestQueryFindNative extends BaseTestCase {
|
||||
|
||||
PagedList<Contact> pagedList = server()
|
||||
.findNative(Contact.class, sql)
|
||||
.setParameter(1, 100)
|
||||
.setParameter(100)
|
||||
.setMaxRows(100)
|
||||
.findPagedList();
|
||||
|
||||
@@ -159,7 +159,7 @@ public class TestQueryFindNative extends BaseTestCase {
|
||||
List<Contact> contacts =
|
||||
server()
|
||||
.findNative(Contact.class, sql)
|
||||
.setParameter(1, "Rob")
|
||||
.setParameter("Rob")
|
||||
.findList();
|
||||
|
||||
|
||||
@@ -206,8 +206,8 @@ public class TestQueryFindNative extends BaseTestCase {
|
||||
LoggedSqlCollector.start();
|
||||
|
||||
List<Customer> 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();
|
||||
|
||||
@@ -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<BigDecimal> 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);
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -127,7 +127,7 @@ public class TestNativeSqlBasic extends BaseTestCase {
|
||||
String nativeSql = "select id, name from o_customer where id > ?";
|
||||
|
||||
List<Customer> 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<Customer> customers =
|
||||
Ebean.findNative(Customer.class, nativeSql)
|
||||
.setParameter(1, 1)
|
||||
.setParameter(1)
|
||||
.fetchQuery("contacts")
|
||||
.findList();
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class TestNativeWithEmbedded extends BaseTestCase {
|
||||
LoggedSqlCollector.start();
|
||||
|
||||
Query<EPerson> query = Ebean.findNative(EPerson.class, sql);
|
||||
query.setParameter(1, person.getId());
|
||||
query.setParameter(person.getId());
|
||||
EPerson one = query.findOne();
|
||||
|
||||
assertThat(one.getName()).isEqualTo("Frank");
|
||||
|
||||
@@ -23,7 +23,7 @@ public class CustomerRepository extends BeanRepository<Integer, Customer> {
|
||||
|
||||
public Customer findMatchName(String matchName) {
|
||||
return nativeSql("select id, name from o_customer where name = ?")
|
||||
.setParameter(1, matchName)
|
||||
.setParameter(matchName)
|
||||
.findOne();
|
||||
}
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
|
||||
@@ -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());
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -79,8 +79,8 @@
|
||||
<logger name="io.ebean.docker" level="TRACE"/>
|
||||
<!-- <logger name="io.ebean.DDL" level="DEBUG"/>-->
|
||||
|
||||
<!-- <logger name="io.ebean.SQL" level="TRACE"/>-->
|
||||
<!-- <logger name="io.ebean.TXN" level="TRACE"/>-->
|
||||
<logger name="io.ebean.SQL" level="TRACE"/>
|
||||
<logger name="io.ebean.TXN" level="TRACE"/>
|
||||
<!-- <logger name="io.ebean.SUM" level="TRACE"/>-->
|
||||
|
||||
<!-- <logger name="io.ebean.cache" level="TRACE"/>-->
|
||||
|
||||
Reference in New Issue
Block a user