@Override public SQLUpdateClause update(final RelationalPath<?> entity) { return new SQLUpdateClause(con, dialect, entity); }
@Override public final SQLUpdateClause update(RelationalPath<?> path) { return new SQLUpdateClause(connection.get(), configuration, path); }
@Override public Object execute() { try (Connection connection = dataSource.getConnection()) { QProperties prop = QProperties.propProperties; cache.replace(key, newValue); new SQLUpdateClause(connection, sqlTemplates, prop) .where(prop.key.eq(key)) .set(prop.value, newValue) .execute(); } catch (SQLException e) { throw new PropertyServiceDataSourceConnectionException("Cannot connect to DataSource.", e); } return null; } });
@Override public boolean updatePrincipal(final String principal, final String newPrincipal) { long updateCount = querydslSupport.execute((connection, configuration) -> { QSimpleSubject qSimpleSubject = QSimpleSubject.simpleSubject; return new SQLUpdateClause(connection, configuration, qSimpleSubject) .where(qSimpleSubject.principal.eq(principal)) .set(qSimpleSubject.principal, newPrincipal) .execute(); }); return updateCount > 0; }
@Override public boolean updateCredential(final String principal, final String newPlainCredential) { String encryptedCredential = (newPlainCredential == null) ? null : credentialEncryptor.encrypt(newPlainCredential); long updateCount = querydslSupport.execute((connection, configuration) -> { QSimpleSubject qSimpleSubject = QSimpleSubject.simpleSubject; return new SQLUpdateClause(connection, configuration, qSimpleSubject) .where(qSimpleSubject.principal.eq(principal)) .set(qSimpleSubject.encryptedCredential, encryptedCredential) .execute(); }); return updateCount > 0; }
@SuppressWarnings("unchecked") private long executeCompositeMerge() { if (hasRow()) { // update SQLUpdateClause update = new SQLUpdateClause(connection, configuration, entity); populate(update); addKeyConditions(update); return update.execute(); } else { // insert SQLInsertClause insert = new SQLInsertClause(connection, configuration, entity); populate(insert); return insert.execute(); } }
if (hasRow()) { SQLUpdateClause update = new SQLUpdateClause(connection, configuration, entity); populate(update); addKeyConditions(update);
@Override public boolean updateCredential(final String principal, final String originalPlainCredential, final String newPlainCredential) { QSimpleSubject qSimpleSubject = QSimpleSubject.simpleSubject; String originalEncryptedCredential = readEncryptedCredential(principal); if ((originalEncryptedCredential != null) && !credentialMatcher.match(originalPlainCredential, originalEncryptedCredential)) { return false; } String encryptedNewCredential = (newPlainCredential == null) ? null : credentialEncryptor.encrypt(newPlainCredential); long updateCount = querydslSupport.execute((connection, configuration) -> { return new SQLUpdateClause(connection, configuration, qSimpleSubject) .where(qSimpleSubject.principal.eq(principal)) .set(qSimpleSubject.encryptedCredential, encryptedNewCredential) .execute(); }); return updateCount > 0; }
@Test public void Insert_Query_Update() { QPerson person = QPerson.person; // insert SQLInsertClause insert = new SQLInsertClause(connection, configuration, person); insert.set(person.id, 10); insert.set(person.firstname, "Bob"); insert.set(person.gender, Gender.MALE); assertEquals(1l, insert.execute()); // query SQLQuery query = new SQLQuery(connection, configuration); assertEquals(Gender.MALE, query.from(person).where(person.id.eq(10)).uniqueResult(person.gender)); // update SQLUpdateClause update = new SQLUpdateClause(connection, configuration, person); update.set(person.gender, Gender.FEMALE); update.set(person.firstname, "Jane"); update.where(person.id.eq(10)); update.execute(); // query query = new SQLQuery(connection, configuration); assertEquals(Gender.FEMALE, query.from(person).where(person.id.eq(10)).uniqueResult(person.gender)); }