All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ca.krasnay.sqlbuilder.UpdateCreator Maven / Gradle / Ivy

package ca.krasnay.sqlbuilder;


/**
 * A Spring PreparedStatementCreator that you can use like an UpdateBuilder.
 * Example usage is as follows:
 *
 * 
 * PreparedStatementCreator psc = new UpdateCreator("emp").setValue("name", employee.getName()).whereEquals("id",
 *         employeeId);
 *
 * new JdbcTemplate(dataSource).update(psc);
 * 
* * @author John Krasnay */ public class UpdateCreator extends AbstractSqlCreator { private static final long serialVersionUID = 1; private UpdateBuilder builder; public UpdateCreator(String table) { builder = new UpdateBuilder(table); } @Override protected AbstractSqlBuilder getBuilder() { return builder; } public UpdateCreator set(String expr) { builder.set(expr); return this; } @Override public UpdateCreator setParameter(String name, Object value) { super.setParameter(name, value); return this; } public UpdateCreator setValue(String column, Object value) { builder.set(column + " = :" + column); setParameter(column, value); return this; } public UpdateCreator where(String expr) { builder.where(expr); return this; } public UpdateCreator where(Predicate predicate) { predicate.init(this); builder.where(predicate.toSql()); return this; } public UpdateCreator whereEquals(String expr, Object value) { String param = allocateParameter(); builder.where(expr + " = :" + param); setParameter(param, value); return this; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy