blob: 9c37c64203dcc08162b5b897ebce1e6d577fd61c [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>OrderColumn</title>
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="OrderColumn";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../javax/persistence/OrderBy.html" title="annotation in javax.persistence"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../javax/persistence/Parameter.html" title="interface in javax.persistence"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?javax/persistence/OrderColumn.html" target="_top">Frames</a></li>
<li><a href="OrderColumn.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">javax.persistence</div>
<h2 title="Annotation Type OrderColumn" class="title">Annotation Type OrderColumn</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@Target(value={METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface <span class="memberNameLabel">OrderColumn</span></pre>
<div class="block">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.
<p> The <code>OrderColumn</code> annotation is specified on a
OneToMany or ManyToMany relationship or on an element
collection. The <code>OrderColumn</code> 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.
<p> The <a href="../../javax/persistence/OrderBy.html" title="annotation in javax.persistence"><code>OrderBy</code></a> annotation should be used for ordering that
is visible as persistent state and maintained by the
application. The <code>OrderBy</code> annotation is not used when
<code>OrderColumn</code> is specified.
<p> 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.
<pre>
Example:
&#064;Entity
public class CreditCard {
&#064;Id long ccNumber;
&#064;OneToMany // unidirectional
&#064;OrderColumn
List&#060;CardTransaction&#062; transactionHistory;
...
}
</pre></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Java Persistence 2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/persistence/OrderBy.html" title="annotation in javax.persistence"><code>OrderBy</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.optional.element.summary">
<!-- -->
</a>
<h3>Optional Element Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation">
<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Optional Element and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/OrderColumn.html#columnDefinition--">columnDefinition</a></span></code>
<div class="block">(Optional) The SQL fragment that is used when generating the DDL for the
column.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/OrderColumn.html#insertable--">insertable</a></span></code>
<div class="block">(Optional) Whether the column is included in SQL INSERT statements
generated by the persistence provider.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/OrderColumn.html#name--">name</a></span></code>
<div class="block">(Optional) The name of the ordering column.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/OrderColumn.html#nullable--">nullable</a></span></code>
<div class="block">(Optional) Whether the database column is nullable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/OrderColumn.html#updatable--">updatable</a></span></code>
<div class="block">(Optional) Whether the column is included in SQL UPDATE statements
generated by the persistence provider.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.element.detail">
<!-- -->
</a>
<h3>Element Detail</h3>
<a name="name--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>name</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;name</pre>
<div class="block">(Optional) The name of the ordering column.
Defaults to the concatenation of the name of the
referencing property or field; "_"; "ORDER".</div>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nullable--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nullable</h4>
<pre>public abstract&nbsp;boolean&nbsp;nullable</pre>
<div class="block">(Optional) Whether the database column is nullable.</div>
<dl>
<dt>Default:</dt>
<dd>true</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="insertable--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insertable</h4>
<pre>public abstract&nbsp;boolean&nbsp;insertable</pre>
<div class="block">(Optional) Whether the column is included in SQL INSERT statements
generated by the persistence provider.</div>
<dl>
<dt>Default:</dt>
<dd>true</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="updatable--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updatable</h4>
<pre>public abstract&nbsp;boolean&nbsp;updatable</pre>
<div class="block">(Optional) Whether the column is included in SQL UPDATE statements
generated by the persistence provider.</div>
<dl>
<dt>Default:</dt>
<dd>true</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="columnDefinition--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>columnDefinition</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;columnDefinition</pre>
<div class="block">(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.</div>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../javax/persistence/OrderBy.html" title="annotation in javax.persistence"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../javax/persistence/Parameter.html" title="interface in javax.persistence"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?javax/persistence/OrderColumn.html" target="_top">Frames</a></li>
<li><a href="OrderColumn.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>