Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornhauge2007-05-04 19:55:48 +0000
committernhauge2007-05-04 19:55:48 +0000
commitbc72d754f082fe30ef0d7aeff54f29c64553f02a (patch)
treed69c3c3f38ea93ee78ce6d4529f80d928ee88030 /jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm
parentd8139fbb848c9509ae592b5477c85f5fd34b8ceb (diff)
downloadwebtools.dali-bc72d754f082fe30ef0d7aeff54f29c64553f02a.tar.gz
webtools.dali-bc72d754f082fe30ef0d7aeff54f29c64553f02a.tar.xz
webtools.dali-bc72d754f082fe30ef0d7aeff54f29c64553f02a.zip
178911 - Initial check-in for user.doc plugin for Dali 1.0.
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm')
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm162
1 files changed, 162 insertions, 0 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm b/jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm
new file mode 100644
index 0000000000..cb21d3e933
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm
@@ -0,0 +1,162 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<!-- Run date = May 3, 2007 9:19:10 -->
+<meta name="OAC_IGNORE_SKIP_NAV" content="true" />
+<title>Many-to-many mapping</title>
+<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+<meta http-equiv="Content-Style-Type" content="text/css" />
+<meta http-equiv="Content-Script-Type" content="text/javascript" />
+<meta name="generator" content="Oracle DARB XHTML Converter - Version 4.5.3 Build 02" />
+<meta name="date" content="2005-07-10T12:57:20+08:00" />
+<meta name="robots" content="all" scheme="http://www.robotstxt.org/" />
+<meta name="doctitle" content="Many-to-many mapping" />
+<meta name="relnum" content="Release 1.0.0" />
+<meta name="partnum" content="" />
+<link rel="copyright" href="dcommon/html/cpyr.htm" title="Copyright" type="text/html" />
+<link rel="stylesheet" href="dcommon/css/blafdoc.css" title="Oracle BLAFDoc" type="text/css" />
+<link rel="start" href="../../index.htm" title="Home" type="text/html" />
+<link rel="contents" href="toc.htm" title="Contents" type="text/html" />
+</head>
+<body>
+<p><a id="BABEIEGD" name="BABEIEGD"></a></p>
+<div class="sect2"><!-- infolevel="all" infotype="General" -->
+<table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%">
+<tr valign="bottom">
+<td align="left" width="86%">
+<h1>Many-to-many mapping</h1>
+</td>
+</tr>
+</table>
+<p><a id="sthref126" name="sthref126"></a><a id="sthref127" name="sthref127"></a><a id="sthref128" name="sthref128"></a><a id="sthref129" name="sthref129"></a>Use a <span class="bold">Many-to-Many Mapping</span> to define a many-valued association with many-to-many multiplicity. A many-to-many mapping has two sides: the <span class="italic">owning side</span> and <span class="italic">non-owning side</span>. You must specify the join table on the owning side. For bidirectional mappings, either side may be the owning side.</p>
+<ol type="1" start="1">
+<li>
+<p>In the <a href="ref_persistence_outline.htm#BABEGGFE">JPA Structure view</a>, select the field to map. The <a href="ref_persistence_map_view.htm#BABIFBAF">JPA Details view (for attributes)</a> displays the properties for the selected.</p>
+</li>
+<li>
+<p>In the <span class="gui-object-title">Map As</span> field, select <span class="gui-object-action">Many-to-Many</span>.</p>
+</li>
+<li>
+<p>Use this table to complete the <a href="ref_mapping_general.htm#CACBHFIJ">General information</a> fields of the <span class="gui-object-title">JPA Details</span> view.</p>
+<div class="inftblruleinformal">
+<table class="RuleInformal" title="This table lists the fields in the Persistence Properties view for this mapping." summary="This table lists the fields in the Persistence Properties view for this mapping." dir="ltr" border="1" width="100%" frame="border" rules="all" cellpadding="3" cellspacing="0">
+<thead>
+<tr align="left" valign="top">
+<th align="left" valign="bottom" id="r1c1-t8">Property</th>
+<th align="left" valign="bottom" id="r1c2-t8">Description</th>
+<th align="left" valign="bottom" id="r1c3-t8">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr align="left" valign="top">
+<td align="left" id="r2c1-t8" headers="r1c1-t8">Map As</td>
+<td align="left" headers="r2c1-t8 r1c2-t8">Defines this mapping as a <span class="bold">Many to Many Mapping</span>.
+<p>This field corresponds to the <code>@ManyToMany</code> annotation.</p>
+</td>
+<td align="left" headers="r2c1-t8 r1c3-t8">Many to Many</td>
+</tr>
+<tr align="left" valign="top">
+<td align="left" id="r3c1-t8" headers="r1c1-t8">Target Entity</td>
+<td align="left" headers="r3c1-t8 r1c2-t8">The entity to which this attribute is mapped.</td>
+<td align="left" headers="r3c1-t8 r1c3-t8">null
+<p>You do not need to explicitly specify the target entity, since it can be inferred from the type of object being referenced.</p>
+</td>
+</tr>
+<tr align="left" valign="top">
+<td align="left" id="r4c1-t8" headers="r1c1-t8">Fetch</td>
+<td align="left" headers="r4c1-t8 r1c2-t8">Defines how data is loaded from the database. See <a href="ref_mapping_general.htm#CACGGGHB">"Fetch Type"</a> for details.
+<ul>
+<li type="disc">
+<p>Eager</p>
+</li>
+<li type="disc">
+<p>Lazy</p>
+</li>
+</ul>
+</td>
+<td align="left" headers="r4c1-t8 r1c3-t8">Eager</td>
+</tr>
+<tr align="left" valign="top">
+<td align="left" id="r5c1-t8" headers="r1c1-t8">Mapped By</td>
+<td align="left" headers="r5c1-t8 r1c2-t8">The database field that owns the relationship.</td>
+<td align="left" headers="r5c1-t8 r1c3-t8"><br /></td>
+</tr>
+</tbody>
+</table>
+<br /></div>
+<!-- class="inftblruleinformal" --></li>
+<li>
+<p>Use this table to complete the fields in the <a href="reference005.htm#CACBAEBC">Join Table Information</a> area in the <span class="gui-object-title">JPA Details</span> view.</p>
+<div class="inftblruleinformal">
+<table class="RuleInformal" title="This table lists the fields in the Join Table tab of the Persistence Properties view for this mapping." summary="This table lists the fields in the Join Table tab of the Persistence Properties view for this mapping." dir="ltr" border="1" width="100%" frame="border" rules="all" cellpadding="3" cellspacing="0">
+<thead>
+<tr align="left" valign="top">
+<th align="left" valign="bottom" id="r1c1-t9">Property</th>
+<th align="left" valign="bottom" id="r1c2-t9">Description</th>
+<th align="left" valign="bottom" id="r1c3-t9">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr align="left" valign="top">
+<td align="left" id="r2c1-t9" headers="r1c1-t9">Name</td>
+<td align="left" headers="r2c1-t9 r1c2-t9">Name of the join table that contains the foreign key column.</td>
+<td align="left" headers="r2c1-t9 r1c3-t9">You must specify the join table on the owning side.
+<p>By default, the name is assumed to be the primary tables associated with the entities concatenated with an underscore.</p>
+</td>
+</tr>
+<tr align="left" valign="top">
+<td align="left" id="r3c1-t9" headers="r1c1-t9">Join Columns</td>
+<td align="left" headers="r3c1-t9 r1c2-t9">Select <span class="bold">Override Default</span>, then Add, Edit, or Remove the join columns.</td>
+<td align="left" headers="r3c1-t9 r1c3-t9">By default, the name is assumed to be the primary tables associated with the entities concatenated with an underscore.</td>
+</tr>
+<tr align="left" valign="top">
+<td align="left" id="r4c1-t9" headers="r1c1-t9">Inverse Join Columns</td>
+<td align="left" headers="r4c1-t9 r1c2-t9">Select <span class="bold">Override Default</span>, then Add, Edit, or Remove the join columns.</td>
+<td align="left" headers="r4c1-t9 r1c3-t9">By default, the mapping is assumed to have a single join.</td>
+</tr>
+</tbody>
+</table>
+<br /></div>
+<!-- class="inftblruleinformal" --></li>
+<li>
+<p>To add a new Join or Inverse Join Column, click <span class="gui-object-action">Add</span>.</p>
+<p>To edit an existing Join or Inverse Join Column, select the field to and click <span class="gui-object-action">Edit</span>.</p>
+</li>
+</ol>
+<p>Eclipse adds the following annotations to the field:</p>
+<pre xml:space="preserve" class="oac_no_warn">
+@JoinTable(joinColumns=@JoinColumn(name="<span class="italic">&lt;JOIN_COLUMN&gt;</span>"),
+ name = "<span class="italic">&lt;JOIN_TABLE_NAME&gt;</span>")
+@ManyToMany(cascade=CascadeType.<span class="italic">&lt;CASCADE_TYPE&gt;</span>, fetch=FetchType.<span class="italic">&lt;FETCH_TYPE&gt;</span>,
+ targetEntity=<span class="italic">&lt;TARGET_ENTITY&gt;</span>, mappedBy = "<span class="italic">&lt;MAPPED_BY&gt;</span>")
+@OrderBy("<span class="italic">&lt;ORDER_BY&gt;</span>")
+
+
+</pre>
+<p>&nbsp;</p>
+<img src="img/ngrelt.png" alt="Related task" title="Related task" /><br />
+<br />
+<a href="task_mapping.htm#BABDGBIJ">Mapping an entity</a>
+<p>&nbsp;</p>
+<img src="img/ngrelr.png" alt="Related reference" title="Related reference" /><br />
+<br />
+<a href="ref_persistence_outline.htm#BABEGGFE">JPA Structure view</a><br />
+<a href="ref_persistence_map_view.htm#BABIFBAF">JPA Details view (for attributes)</a>
+<p>&nbsp;</p>
+<img src="img/ngrelc.png" alt="Related concept" title="Related concept" /><br />
+<br />
+<a href="concept_mapping.htm#BABBDJFI">Understanding OR mappings</a><br />
+<a href="concepts001.htm#BABBGFJG">Understanding EJB 3.0 Java Persistence API</a></div>
+<!-- class="sect2" -->
+<!-- Start Footer -->
+<div class="footer">
+<table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%">
+<tr>
+<td align="left" width="86%"><a href="dcommon/html/cpyr.htm"><span class="copyrightlogo">Copyright&nbsp;&copy;&nbsp;2006, 2007,&nbsp;Oracle.&nbsp;All&nbsp;rights&nbsp;reserved.</span></a></td>
+</tr>
+</table>
+</div>
+<!-- class="footer" -->
+</body>
+</html>

Back to the top