-
@Target(value={METHOD,FIELD}) @Retention(value=RUNTIME) public @interface OrderColumn
Specifies a column that is used to maintain the persistent order of a list. The persistence provider is responsible for maintaining the order upon retrieval and in the database. The persistence provider is responsible for updating the ordering upon flushing to the database to reflect any insertion, deletion, or reordering affecting the list.The
OrderColumn
annotation is specified on a OneToMany or ManyToMany relationship or on an element collection. TheOrderColumn
annotation is specified on the side of the relationship that references the collection that is to be ordered. The order column is not visible as part of the state of the entity or embeddable class.The
OrderBy
annotation should be used for ordering that is visible as persistent state and maintained by the application. TheOrderBy
annotation is not used whenOrderColumn
is specified.The order column must be of integral type. The persistence provider maintains a contiguous (non-sparse) ordering of the values of the order column when updating the association or element collection. The order column value for the first element is 0.
Example: @Entity public class CreditCard { @Id long ccNumber; @OneToMany // unidirectional @OrderColumn List<CardTransaction> transactionHistory; ... }
- Since:
- Java Persistence 2.0
- See Also:
OrderBy
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element and Description String
columnDefinition
(Optional) The SQL fragment that is used when generating the DDL for the column.boolean
insertable
(Optional) Whether the column is included in SQL INSERT statements generated by the persistence provider.String
name
(Optional) The name of the ordering column.boolean
nullable
(Optional) Whether the database column is nullable.boolean
updatable
(Optional) Whether the column is included in SQL UPDATE statements generated by the persistence provider.
-
-
-
Element Detail
-
name
public abstract String name
(Optional) The name of the ordering column. Defaults to the concatenation of the name of the referencing property or field; "_"; "ORDER".- Default:
- ""
-
-
-
nullable
public abstract boolean nullable
(Optional) Whether the database column is nullable.- Default:
- true
-
-
-
insertable
public abstract boolean insertable
(Optional) Whether the column is included in SQL INSERT statements generated by the persistence provider.- Default:
- true
-
-
-
updatable
public abstract boolean updatable
(Optional) Whether the column is included in SQL UPDATE statements generated by the persistence provider.- Default:
- true
-
-
-
columnDefinition
public abstract String columnDefinition
(Optional) The SQL fragment that is used when generating the DDL for the column. Defaults to generated SQL to create a column of the inferred type.- Default:
- ""
-
-
Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/persistence/OrderColumn.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.