|
@@ -355,14 +355,14 @@ public abstract class AbstractCRUDDAO<E extends Identifiable> |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public int bulkDeleteWhere(@NonNull final String whereClause) { |
|
|
public int bulkDeleteWhere(@NonNull final String whereClause) { |
|
|
return bulkDeleteWhere(whereClause, new HashMap<>()); |
|
|
|
|
|
|
|
|
return bulkDeleteWhere(whereClause, null); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public int bulkDeleteWhere(@NonNull final String whereClause, @NonNull final Map<String, Object> parameters) { |
|
|
|
|
|
|
|
|
public int bulkDeleteWhere(@NonNull final String whereClause, @Nullable final Map<String, Object> parameters) { |
|
|
final Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); |
|
|
final Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); |
|
|
final String deleteSql = "DELETE FROM " + getEntityClass().getSimpleName() + " WHERE " + whereClause; |
|
|
final String deleteSql = "DELETE FROM " + getEntityClass().getSimpleName() + " WHERE " + whereClause; |
|
|
final Query query = session.createQuery(deleteSql); |
|
|
final Query query = session.createQuery(deleteSql); |
|
|
parameters.forEach(query::setParameter); |
|
|
|
|
|
|
|
|
if (!empty(parameters)) parameters.forEach(query::setParameter); |
|
|
final int count = query.executeUpdate(); |
|
|
final int count = query.executeUpdate(); |
|
|
session.setFlushMode(FlushMode.COMMIT); |
|
|
session.setFlushMode(FlushMode.COMMIT); |
|
|
session.flush(); |
|
|
session.flush(); |
|
|