Interface CriteriaUpdate<T>

Type Parameters:
T - the entity type that is the target of the update
All Superinterfaces:
CommonAbstractCriteria, CriteriaStatement<T>

public interface CriteriaUpdate<T> extends CriteriaStatement<T>
The CriteriaUpdate interface defines functionality for performing bulk update operations using the Criteria API.

Criteria API bulk update operations map directly to database update operations, bypassing any optimistic locking checks. Portable applications using bulk update operations must manually update the value of the version column, if desired, and/or manually validate the value of the version column. The persistence context is not automatically synchronized with the result of the bulk update.

A CriteriaUpdate object must have a single root.

Since:
2.1
  • Method Details

    • set

      <Y, X extends Y> CriteriaUpdate<T> set(SingularAttribute<? super T, Y> attribute, X value)
      Update the value of the specified attribute.
      Type Parameters:
      Y - the type of the attribute
      X - the type of the value
      Parameters:
      attribute - the attribute to be updated
      value - the new value to set
      Returns:
      the modified update query
    • set

      <Y> CriteriaUpdate<T> set(SingularAttribute<? super T, Y> attribute, Expression<? extends Y> value)
      Update the value of the specified attribute.
      Type Parameters:
      Y - the type of the attribute
      Parameters:
      attribute - the attribute to be updated
      value - the new value to set
      Returns:
      the modified update query
    • set

      <Y, X extends Y> CriteriaUpdate<T> set(Path<Y> attribute, X value)
      Update the value of the specified attribute.
      Type Parameters:
      Y - the type of the attribute
      X - the type of the value
      Parameters:
      attribute - the attribute to be updated
      value - the new value to set
      Returns:
      the modified update query
    • set

      <Y> CriteriaUpdate<T> set(Path<Y> attribute, Expression<? extends Y> value)
      Update the value of the specified attribute.
      Type Parameters:
      Y - the type of the attribute
      Parameters:
      attribute - the attribute to be updated
      value - the new value to set
      Returns:
      the modified update query
    • set

      CriteriaUpdate<T> set(String attributeName, Object value)
      Update the value of the specified attribute.
      Parameters:
      attributeName - the name of the attribute to be updated
      value - the new value to set
      Returns:
      the modified update query
      Throws:
      IllegalArgumentException - if there is no attribute with the given name
      API note:
      This method accepts a string-valued attribute name, and lacks type safety compared to passing a static metamodel element to set(SingularAttribute,Expression). Use of the typesafe version is strongly preferred.
    • where

      CriteriaUpdate<T> where(Expression<Boolean> restriction)
      Modify the update query to restrict the target of the update according to the specified boolean expression. Replaces the previously added restriction(s), if any.
      Parameters:
      restriction - a simple or compound boolean expression
      Returns:
      the modified update query
    • where

      CriteriaUpdate<T> where(BooleanExpression... restrictions)
      Modify the update query to restrict the target of the update according to the conjunction of the specified restriction predicates. Replaces the previously added restriction(s), if any. If no restrictions are specified, any previously added restrictions are simply removed.
      Parameters:
      restrictions - zero or more restriction predicates
      Returns:
      the modified update query