EntityManager.
When queries are executed within a transaction, if AUTO
is set on the Query or TypedQuery object, or
if the flush mode setting for the persistence context is AUTO
(the default) and a flush mode setting has not been specified for the
Query or TypedQuery object, the persistence provider
is responsible for ensuring that all updates to the state of all
entities in the persistence context which could potentially affect
the result of the query are visible to the processing of the query.
The persistence provider implementation may achieve this by flushing
updates to those entities to the database or by some other means.
On the other hand, if COMMIT is set, the effect of updates
made to entities in the persistence context on queries is unspecified.
If there is no transaction active or the persistence context is not joined to the current transaction, the persistence provider must not flush to the database.
EntityManager#setFlushMode(FlushModeType), Query#setFlushMode(FlushModeType)
| Modifier and Type | Field and Description |
|---|---|
| public static final FlushModeType | AUTO
(Default) Flushing to occur at query execution. |
| public static final FlushModeType | COMMIT
Flushing to occur at transaction commit. |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public static FlushModeType | |
| public static FlushModeType[] |
| AUTO | back to summary |
|---|---|
| public static final FlushModeType AUTO (Default) Flushing to occur at query execution. | |
| COMMIT | back to summary |
|---|---|
| public static final FlushModeType COMMIT Flushing to occur at transaction commit. The provider may flush at other times, but is not required to. | |
| FlushModeType | back to summary |
|---|---|
| private FlushModeType() | |
| valueOf | back to summary |
|---|---|
| public static FlushModeType valueOf(String name) | |
| values | back to summary |
|---|---|
| public static FlushModeType[] values() | |