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

javax.persistence.criteria.CriteriaUpdate Maven / Gradle / Ivy

Go to download

The Java Persistence API (JPA) : a standard interface-based Java model abstraction of persistence, developed by the JCP.

There is a newer version: 2.2.4
Show newest version
/*
 * Copyright (c) 2008, 2009, 2011 Oracle, Inc. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
 * which accompanies this distribution.  The Eclipse Public License is available
 * at http://www.eclipse.org/legal/epl-v10.html and the Eclipse Distribution License
 * is available at http://www.eclipse.org/org/documents/edl-v10.php.
 */
package javax.persistence.criteria;

import javax.persistence.metamodel.EntityType;
import javax.persistence.metamodel.SingularAttribute;

/**
 * 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 synchronized with the result of the bulk update. *

* A CriteriaUpdate object must have a single root. * @param the entity type that is the target of the update * @since Java Persistence 2.1 */ public interface CriteriaUpdate extends CommonAbstractCriteria { /** * Create and add a query root corresponding to the entity that is the target of the update. A * CriteriaUpdate object has a single root, the object that is being updated. * @param entityClass the entity class * @return query root corresponding to the given entity */ Root from(Class entityClass); /** * Create and add a query root corresponding to the entity that is the target of the update. A * CriteriaUpdate object has a single root, the object that is being updated. * @param entity metamodel entity representing the entity of type X * @return query root corresponding to the given entity */ Root from(EntityType entity); /** * Return the query root. * @return the query root */ Root getRoot(); /** * Update the value of the specified attribute. * @param attribute attribute to be updated * @param value new value * @return the modified query * @param type * @param type */ CriteriaUpdate set(SingularAttribute attribute, X value); /** * Update the value of the specified attribute. * @param attribute attribute to be updated * @param value new value * @return the modified query * @param type */ CriteriaUpdate set(SingularAttribute attribute, Expression value); /** * Update the value of the specified attribute. * @param attribute attribute to be updated * @param value new value * @return the modified query * @param type * @param type */ CriteriaUpdate set(Path attribute, X value); /** * Update the value of the specified attribute. * @param attribute attribute to be updated * @param value new value * @return the modified query * @param type */ CriteriaUpdate set(Path attribute, Expression value); /** * Update the value of the specified attribute. * @param attributeName name of the attribute to be updated * @param value new value * @return the modified query */ CriteriaUpdate set(String attributeName, Object value); /** * Modify the query to restrict the target of the update according to the specified boolean expression. * Replaces the previously added restriction(s), if any. * @param restriction a simple or compound boolean expression * @return the modified query */ CriteriaUpdate where(Expression restriction); /** * Modify the 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. * @param restrictions zero or more restriction predicates * @return the modified query */ CriteriaUpdate where(Predicate... restrictions); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy