⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 collections.html

📁 hibernate的一点学习资料!
💻 HTML
📖 第 1 页 / 共 5 页
字号:
                <tt class="literal">sort</tt>&#23646;&#24615;&#20013;&#20801;&#35768;&#30340;&#20540;&#21253;&#25324;<tt class="literal">unsorted</tt>,<tt class="literal">natural</tt>&#21644;&#26576;&#20010;&#23454;&#29616;&#20102;<tt class="literal">java.util.Comparator</tt>&#30340;&#31867;&#30340;&#21517;&#31216;&#12290;            </p><p>                &#20998;&#31867;&#38598;&#21512;&#30340;&#34892;&#20026;&#20107;&#23454;&#19978;&#35937;<tt class="literal">java.util.TreeSet</tt>&#25110;&#32773;<tt class="literal">java.util.TreeMap</tt>&#12290;            </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="collections-s1-8b"></a>6.7.&nbsp;&#23545;collection&#25490;&#24207;&#30340;&#20854;&#20182;&#26041;&#27861;&#65288;Other Ways To Sort a Collection&#65289;</h2></div></div><div></div></div><p>                &#22914;&#26524;&#20320;&#24076;&#26395;&#25968;&#25454;&#24211;&#33258;&#24049;&#23545;&#38598;&#21512;&#20803;&#32032;&#25490;&#24207;&#65292;&#21487;&#20197;&#21033;&#29992;<tt class="literal">set</tt>,<tt class="literal">bag</tt>&#25110;&#32773;<tt class="literal">map</tt>&#26144;&#23556;&#20013;&#30340;<tt class="literal">order-by</tt>&#23646;&#24615;&#12290;&#36825;&#20010;&#35299;&#20915;&#26041;&#26696;&#21482;&#33021;&#22312;jdk1.4&#25110;&#32773;&#26356;&#39640;&#30340;jdk&#29256;&#26412;&#20013;&#25165;&#21487;&#20197;&#23454;&#29616;(&#36890;&#36807;LinkedHashSet&#25110;&#32773;LinkedHashMap&#23454;&#29616;)&#12290; &#23427;&#26159;&#22312;SQL&#26597;&#35810;&#20013;&#23436;&#25104;&#25490;&#24207;&#65292;&#32780;&#19981;&#26159;&#22312;&#20869;&#23384;&#20013;&#12290;            </p><pre class="programlisting">&lt;set name="aliases" table="person_aliases" order-by="name asc"&gt;    &lt;key column="person"/&gt;    &lt;element column="name" type="string"/&gt;&lt;/set&gt;&lt;map name="holidays" order-by="hol_date, hol_name" lazy="true"&gt;    &lt;key column="year_id"/&gt;    &lt;index column="hol_name" type="string"/&gt;    &lt;element column="hol_date type="date"/&gt;&lt;/map&gt;</pre><p>                &#27880;&#24847;: &#36825;&#20010;<tt class="literal">order-by</tt>&#23646;&#24615;&#30340;&#20540;&#26159;&#19968;&#20010;SQL&#25490;&#24207;&#23376;&#21477;&#32780;&#19981;&#26159;HQL&#30340;&#65281;            </p><p>                &#20851;&#32852;&#36824;&#21487;&#20197;&#22312;&#36816;&#34892;&#26102;&#20351;&#29992;<tt class="literal">filter()</tt>&#26681;&#25454;&#20219;&#24847;&#30340;&#26465;&#20214;&#26469;&#25490;&#24207;&#12290;            </p><pre class="programlisting">sortedUsers = s.filter( group.getUsers(), "order by this.name" );</pre></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="collections-s1-9"></a>6.8.&nbsp;&#22403;&#22334;&#25910;&#38598;&#65288;Garbage Collection&#65289;</h2></div></div><div></div></div><p>                &#38598;&#21512;&#26159;&#22312;&#34987;&#25345;&#20037;&#23545;&#35937;&#24341;&#29992;&#26102;&#33258;&#21160;&#25345;&#20037;&#21270;&#65292;&#24182;&#19988;&#19981;&#20877;&#19981;&#24341;&#29992;&#26102;&#33258;&#21160;&#21024;&#38500;&#30340;&#12290; &#22914;&#26524;&#38598;&#21512;&#34987;&#20174;&#19968;&#20010;&#25345;&#20037;&#21270;&#23545;&#35937;&#36716;&#31227;&#21040;&#21478;&#22806;&#19968;&#20010;, &#20182;&#30340;&#25968;&#25454;&#21487;&#33021;&#20250;&#34987;&#20174;&#19968;&#20010;&#34920;&#31227;&#21040;&#21478;&#22806;&#19968;&#20010;&#12290; &#20320;&#19981;&#38656;&#35201;&#25285;&#24515;&#36825;&#20123;&#12290; &#23601;&#36319;&#20320;&#36890;&#24120;&#20351;&#29992;java&#38598;&#21512;&#19968;&#26679;&#20351;&#29992;Hibernate&#38598;&#21512;&#21363;&#21487;&#12290;            </p><p>            	<span class="emphasis"><em>&#27880;&#24847;:</em></span>&#19978;&#38754;&#30340;&#35770;&#26029;&#22312;<tt class="literal">inverse="true"</tt>&#30340;&#24773;&#20917;&#19979;<span class="emphasis"><em>&#19981;</em></span>&#36866;&#29992;&#12290; &#25105;&#20204;&#23558;&#22312;&#25509;&#19979;&#26469;&#30340;&#31456;&#33410;&#20013;&#35299;&#37322;&#36825;&#19968;&#28857;&#12290;            </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="collections-s1-10"></a>6.9.&nbsp;&#21452;&#21521;&#20851;&#32852;&#65288;Bidirectional Associations&#65289;</h2></div></div><div></div></div><p>                <span class="emphasis"><em>&#21452;&#21521;&#20851;&#32852;</em></span>&#20801;&#35768;&#36890;&#36807;&#20851;&#32852;&#30340;&#20219;&#19968;&#31471;&#35775;&#38382;&#21478;&#22806;&#19968;&#31471;&#12290;&#22312;Hibernate&#20013;, &#25903;&#25345;&#20004;&#31181;&#31867;&#22411;&#30340;&#21452;&#21521;&#20851;&#32852;:                </p><div class="variablelist"><dl><dt><span class="term">&#19968;&#23545;&#22810;&#65288;one-to-many&#65289;</span></dt><dd><p>						    Set&#25110;&#32773;bag&#20540;&#22312;&#19968;&#31471;, &#21333;&#29420;&#20540;(&#38750;&#38598;&#21512;)&#22312;&#21478;&#22806;&#19968;&#31471;                            </p></dd><dt><span class="term">&#22810;&#23545;&#22810;&#65288;many-to-many&#65289;</span></dt><dd><p>				        &#20004;&#31471;&#37117;&#26159;set&#25110;bag&#20540;                            </p></dd></dl></div><p>                        </p><p>                &#35831;&#27880;&#24847;Hibernate&#19981;&#25903;&#25345;&#24102;&#26377;&#32034;&#24341;&#30340;&#38598;&#21512;(list,map&#25110;&#32773;array)&#20316;&#20026;"&#22810;"&#30340;&#37027;&#19968;&#31471;&#30340;&#21452;&#21521;one-to-many&#20851;&#32852;&#12290;            </p><p>                &#35201;&#24314;&#31435;&#19968;&#20010;&#21452;&#21521;&#30340;&#22810;&#23545;&#22810;&#20851;&#32852;&#65292;&#21482;&#38656;&#35201;&#26144;&#23556;&#20004;&#20010;many-to-many&#20851;&#32852;&#21040;&#21516;&#19968;&#20010;&#25968;&#25454;&#24211;&#34920;&#20013;&#65292;&#24182;&#20877;&#23450;&#20041;&#20854;&#20013;&#30340;&#19968;&#31471;&#20026;<span class="emphasis"><em>inverse</em></span>&#12290;&#36825;&#37324;&#26377;&#19968;&#20010;&#20174;&#19968;&#20010;&#31867;&#20851;&#32852;&#21040;<span class="emphasis"><em>&#20182;&#33258;&#36523;</em></span>&#30340;many-to-many&#30340;&#21452;&#21521;&#20851;&#32852;&#30340;&#20363;&#23376;&#65306;                &#65288;&#21407;&#25991;&#65306;You may specify a bidirectional many-to-many association simply by mapping two                many-to-many associations to the same database table and declaring one end as                <span class="emphasis"><em>inverse</em></span>. Heres an example of a bidirectional many-to-many                association from a class back to <span class="emphasis"><em>itself</em></span>:&#65289;            </p><pre class="programlisting">&lt;class name="eg.Node"&gt;    &lt;id name="id" column="id"/&gt;    ....    &lt;bag name="accessibleTo" table="node_access" lazy="true"&gt;        &lt;key column="to_node_id"/&gt;        &lt;many-to-many class="eg.Node" column="from_node_id"/&gt;    &lt;/bag&gt;     &lt;!-- inverse end --&gt;    &lt;bag name="accessibleFrom" table="node_access" inverse="true" lazy="true"&gt;        &lt;key column="from_node_id"/&gt;        &lt;many-to-many class="eg.Node" column="to_node_id"/&gt;    &lt;/bag&gt;&lt;/class&gt;</pre><p>                &#22914;&#26524;&#21482;&#23545;&#20851;&#32852;&#30340;&#21453;&#21521;&#31471;&#36827;&#34892;&#20102;&#25913;&#21464;&#65292;&#36825;&#20010;&#25913;&#21464;<span class="emphasis"><em>&#19981;&#20250;</em></span>&#34987;&#25345;&#20037;&#21270;&#12290;                &#65288;&#21407;&#25991;&#65306;Changes made only to the inverse end of the association are <span class="emphasis"><em>not</em></span>                 persisted.&#65289;            </p><p>                &#35201;&#24314;&#31435;&#19968;&#20010;&#19968;&#23545;&#22810;&#30340;&#21452;&#21521;&#20851;&#32852;&#65292;&#20320;&#21487;&#20197;&#36890;&#36807;&#25226;&#19968;&#20010;&#19968;&#23545;&#22810;&#20851;&#32852;&#65292;&#20316;&#20026;&#19968;&#20010;&#22810;&#23545;&#19968;&#20851;&#32852;&#26144;&#23556;&#21040;&#21040;&#21516;&#19968;&#24352;&#34920;&#30340;&#23383;&#27573;&#19978;&#65292;&#24182;&#19988;&#22312;"&#22810;"&#30340;&#37027;&#19968;&#31471;&#23450;&#20041;<tt class="literal">inverse="true"</tt>&#12290;               &#65288;&#21407;&#25991;&#65306; You may map a bidirectional one-to-many association by mapping a one-to-many association                 to the same table column(s) as a many-to-one association and declaring the many-valued                 end <tt class="literal">inverse="true"</tt>.&#65289;            </p><pre class="programlisting">&lt;class name="eg.Parent"&gt;    &lt;id name="id" column="id"/&gt;    ....    &lt;set name="children" inverse="true" lazy="true"&gt;        &lt;key column="parent_id"/&gt;        &lt;one-to-many class="eg.Child"/&gt;    &lt;/set&gt;&lt;/class&gt;&lt;class name="eg.Child"&gt;    &lt;id name="id" column="id"/&gt;    ....    &lt;many-to-one name="parent" class="eg.Parent" column="parent_id"/&gt;&lt;/class&gt;</pre><p>                                &#22312;&#8220;&#19968;&#8221;&#36825;&#19968;&#31471;&#23450;&#20041;<tt class="literal">inverse="true"</tt>&#19981;&#20250;&#24433;&#21709;&#32423;&#32852;&#25805;&#20316;&#12290;                &#65288;&#21407;&#25991;&#65306;Mapping one end of an association with <tt class="literal">inverse="true"</tt> doesn't                affect the operation of cascades.&#65289;            </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="collections-s1-11a"></a>6.10.&nbsp;&#19977;&#37325;&#20851;&#32852;&#65288;Ternary Associations&#65289;</h2></div></div><div></div></div><p>            	&#36825;&#37324;&#26377;&#20004;&#31181;&#21487;&#33021;&#30340;&#36884;&#24452;&#26469;&#26144;&#23556;&#19968;&#20010;&#19977;&#37325;&#20851;&#32852;&#12290;&#20854;&#20013;&#19968;&#20010;&#26159;&#20351;&#29992;&#32452;&#21512;&#20803;&#32032;(&#19979;&#38754;&#23558;&#35752;&#35770;).&#21478;&#22806;&#19968;&#20010;&#26159;&#20351;&#29992;&#19968;&#20010;map&#65292;&#24182;&#19988;&#24102;&#26377;&#20851;&#32852;&#20316;&#20026;&#20854;&#32034;&#24341;&#12290;            </p><pre class="programlisting">&lt;map name="contracts" lazy="true"&gt;    &lt;key column="employer_id"/&gt;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -