锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美日韩国产影院,国模精品娜娜一二三区,国产亚洲午夜http://www.aygfsteel.com/ducktsmt/category/25213.html涔熻浣庤皟鏄渶濂界殑閫夋嫨zh-cnFri, 24 Aug 2007 20:14:14 GMTFri, 24 Aug 2007 20:14:14 GMT60Hibernate瀹炵幇鍒嗛〉鏌ヨ鐨勫師鐞?/title><link>http://www.aygfsteel.com/ducktsmt/articles/139057.html</link><dc:creator>鐏甸瓊瀹堟姢鑰?/dc:creator><author>鐏甸瓊瀹堟姢鑰?/author><pubDate>Fri, 24 Aug 2007 03:01:00 GMT</pubDate><guid>http://www.aygfsteel.com/ducktsmt/articles/139057.html</guid><wfw:comment>http://www.aygfsteel.com/ducktsmt/comments/139057.html</wfw:comment><comments>http://www.aygfsteel.com/ducktsmt/articles/139057.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/ducktsmt/comments/commentRss/139057.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/ducktsmt/services/trackbacks/139057.html</trackback:ping><description><![CDATA[涓鐩翠負鍒嗛〉鏌ヨ澶寸棝錛孏oogle浜嗕竴涓嬫悳鍒拌繖綃囧ソ鏂囩珷銆侶ibernate浠庡簳灞傚疄鐜板悇縐嶆暟鎹簱鐨勫垎欏墊煡璇紝騫朵笖灝嗚繖縐嶆暟鎹簱闂寸殑宸紓鐢ㄧ粺涓鐨勬柟娉曞皝瑁呰搗鏉ヤ簡銆備笉榪囨渶濂借繕鏄簡瑙d竴涓嬪師鐞嗭紝涔熷ソ鑷繁鍐欏啓綆鍗曠殑鍒嗛〉銆傛瘯绔熷茍涓嶆槸浠涔堟椂鍊欓兘鑳界敤Hibernate鐨勩?br>Hibernate 鍙互瀹炵幇鍒嗛〉鏌ヨ錛屼緥濡傦細 <br>浠庣2涓囨潯寮濮嬪彇鍑?00鏉¤褰?br> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #000000">Query q </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> session.createQuery(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">from Cat as c</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br>q.setFirstResult(</span><span style="COLOR: #000000">20000</span><span style="COLOR: #000000">);<br>q.setMaxResults(</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">);<br>List l </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> q.list();</span></div> <p>閭d箞Hibernate搴曞眰濡備綍瀹炵幇鍒嗛〉鐨勫憿錛熷疄闄呬笂Hibernate鐨勬煡璇㈠畾涔夊湪net.sf.hibernate.loader.Loader榪欎釜綾婚噷闈紝浠旂粏闃呰璇ョ被浠g爜錛屽氨鍙互鎶婇棶棰樺交搴曟悶娓呮銆侶ibernate2.0.3鐨凩oader婧愪唬鐮佺480琛屼互涓嬶細</p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (useLimit) sql </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> dialect.getLimitString(sql);<br>PreparedStatement st </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> session.getBatcher().prepareQueryStatement(sql, scrollable);</span></div> <p>濡傛灉鐩稿簲鐨勬暟鎹簱瀹氫箟浜嗛檺瀹氭煡璇㈣褰曠殑sql璇彞錛岄偅涔堢洿鎺ヤ嬌鐢ㄧ壒瀹氭暟鎹簱鐨剆ql璇彞銆傜劧鍚庢潵鐪媙et.sf.hibernate.dialect.MySQLDialect:<br></p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">boolean</span><span style="COLOR: #000000"> supportsLimit() {   <br>  </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;   <br>}   <br></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> String getLimitString(String sql) {   <br>  StringBuffer pagingSelect </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> StringBuffer(</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">);   <br>  pagingSelect.append(sql);   <br>  pagingSelect.append(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> limit ?, ?</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);   <br>  </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> pagingSelect.toString();   <br>}  </span></div> 榪欐槸MySQL鐨勪笓鐢ㄥ垎欏佃鍙ワ紝鍐嶆潵鐪媙et.sf.hibernate.dialect.Oracle9Dialect:<br> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_31_54_Open_Image onclick="this.style.display='none'; Codehighlighter1_31_54_Open_Text.style.display='none'; Codehighlighter1_31_54_Closed_Image.style.display='inline'; Codehighlighter1_31_54_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_31_54_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_31_54_Closed_Text.style.display='none'; Codehighlighter1_31_54_Open_Image.style.display='inline'; Codehighlighter1_31_54_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">boolean</span><span style="COLOR: #000000"> supportsLimit() </span><span id=Codehighlighter1_31_54_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/Images/dot.gif"></span><span id=Codehighlighter1_31_54_Open_Text><span style="COLOR: #000000">{   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>  <br><img id=Codehighlighter1_103_389_Open_Image onclick="this.style.display='none'; Codehighlighter1_103_389_Open_Text.style.display='none'; Codehighlighter1_103_389_Closed_Image.style.display='inline'; Codehighlighter1_103_389_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_103_389_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_103_389_Closed_Text.style.display='none'; Codehighlighter1_103_389_Open_Image.style.display='inline'; Codehighlighter1_103_389_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> String getLimitString(String sql) </span><span id=Codehighlighter1_103_389_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/Images/dot.gif"></span><span id=Codehighlighter1_103_389_Open_Text><span style="COLOR: #000000">{   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  StringBuffer pagingSelect </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> StringBuffer(</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">);   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  pagingSelect.append(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">select * from ( select row_.*, rownum rownum_ from ( </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  pagingSelect.append(sql);   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  pagingSelect.append(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> ) row_ where rownum <= ?) where rownum_ > ?</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> pagingSelect.toString();   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <p>Oracle閲囩敤宓屽3灞傜殑鏌ヨ璇彞緇撳悎rownum鏉ュ疄鐜板垎欏碉紝榪欏湪Oracle涓婃槸鏈蹇殑鏂瑰紡錛屽鏋滃彧鏄竴灞傛垨鑰呬袱灞傜殑鏌ヨ璇彞鐨剅ownum涓嶈兘鏀寔order by銆?/p> <p>闄ゆ涔嬪錛孖nterbase錛孭ostgreSQL錛孒SQL涔熸敮鎸佸垎欏電殑sql璇彞錛屽湪鐩稿簲鐨凞ialect閲岄潰錛屽ぇ瀹惰嚜琛屽弬鑰冦?/p> <p>濡傛灉鏁版嵁搴撲笉鏀寔鍒嗛〉鐨凷QL璇彞錛岄偅涔堟牴鎹湪閰嶇疆鏂囦歡閲岄潰 <br>#hibernate.jdbc.use_scrollable_resultset true <br>榛樿鏄痶rue錛屽鏋滀綘涓嶆寚瀹氫負false錛岄偅涔圚ibernate浼氫嬌鐢↗DBC2.0鐨剆crollable result鏉ュ疄鐜板垎欏碉紝鐪婰oader絎?30琛屼互涓嬶細</p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> ( session.getFactory().useScrollableResultSets() ) {   <br>  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> we can go straight to the first required row   </span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">  rs.absolute(firstRow);   <br>}   <br></span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> {   <br>  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> we need to step through the rows one row at a time (slow)   </span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">  </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> ( </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> m</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">; m</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">firstRow; m</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000"> ) rs.next();   <br>}</span></div> <p>濡傛灉鏀寔scrollable result錛屼嬌鐢≧esultSet鐨刟bsolute鏂規硶鐩存帴縐誨埌鏌ヨ璧風偣錛屽鏋滀笉鏀寔鐨勮瘽錛屼嬌鐢ㄥ驚鐜鍙ワ紝rs.next涓鐐圭偣鐨勭Щ榪囧幓銆?/p> <p>鍙浣跨敤Hibernate錛屽湪榪涜鏌ヨ鍒嗛〉鐨勬搷浣滀笂錛屾槸鍏鋒湁闈炲父澶х殑鐏墊椿鎬э紝Hibernate浼氶鍏堝皾璇曠敤鐗瑰畾鏁版嵁搴撶殑鍒嗛〉sql錛屽鏋滄病鐢紝鍐嶅皾璇昐crollable錛屽鏋滀笉琛岋紝鏈鍚庨噰鐢╮set.next()縐誨姩鐨勫姙娉曘?/p> <p>鍦ㄦ煡璇㈠垎欏典唬鐮佷腑浣跨敤Hibernate鐨勪竴澶уソ澶勬槸錛屾棦鍏奸【浜嗘煡璇㈠垎欏電殑鎬ц兘錛屽悓鏃跺張淇濊瘉浜嗕唬鐮佸湪涓嶅悓鐨勬暟鎹簱涔嬮棿鐨勫彲縐繪鎬с?/p> <p>Oracle鐨勮繖縐嶅疄鐜板鏋滄湁order by瀛愬彞渚濈劧鏈夐棶棰樸傛煇浜涙椂鍊欎細瀵艱嚧緲婚〉鏈夎褰曢噸澶嶆垨鑰呴仐澶憋紝寰堥毦鎵懼埌瑙勫緥錛岄潪甯稿鎬?/p> <p>鍚庢潵鍘籫oogle浜嗕竴涓嬶紝鏈塐racle涓撳璇撮渶瑕乷rder by鐨勬椂鍊欏繀欏誨甫涓妘nique鐨勫瓧孌碉紝渚嬪涓婚敭鎴栬卹owid絳夈?/p> <p>鍙﹀錛屽湪浣跨敤榪欑閲囩敤rownum鐨勬煡璇㈡椂錛屽敖綆¢熷害鐩稿姣旇緝蹇紝浣嗘槸鍚庡彴Oracle鍦ㄥ唴瀛樺拰CPU鐨勬秷鑰椾笂浼氬鍔犺澶氥傚叾瀹為櫎闈炵粨鏋滈泦闈炲父搴炲ぇ(鍑犱竾浠ヤ笂)錛屽茍涓斿繀欏葷炕鍊掑緢鍚庨潰(skip鐨勮褰曞緢澶?錛岄噰鐢≧esultSet.absolute鏂規硶鎬ц兘榪樺彲浠ワ紝騫舵病鏈夋暟閲忕駭涓婄殑宸埆銆?</p> <img src ="http://www.aygfsteel.com/ducktsmt/aggbug/139057.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/ducktsmt/" target="_blank">鐏甸瓊瀹堟姢鑰?/a> 2007-08-24 11:01 <a href="http://www.aygfsteel.com/ducktsmt/articles/139057.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> 主站蜘蛛池模板: <a href="http://" target="_blank">大石桥市</a>| <a href="http://" target="_blank">普洱</a>| <a href="http://" target="_blank">靖西县</a>| <a href="http://" target="_blank">黔东</a>| <a href="http://" target="_blank">自治县</a>| <a href="http://" target="_blank">麻栗坡县</a>| <a href="http://" target="_blank">宝清县</a>| <a href="http://" target="_blank">加查县</a>| <a href="http://" target="_blank">郯城县</a>| <a href="http://" target="_blank">吉木乃县</a>| <a href="http://" target="_blank">满城县</a>| <a href="http://" target="_blank">江安县</a>| <a href="http://" target="_blank">阳高县</a>| <a href="http://" target="_blank">舞钢市</a>| <a href="http://" target="_blank">北海市</a>| <a href="http://" target="_blank">永仁县</a>| <a href="http://" target="_blank">江达县</a>| <a href="http://" target="_blank">林州市</a>| <a href="http://" target="_blank">上栗县</a>| <a href="http://" target="_blank">乌拉特中旗</a>| <a href="http://" target="_blank">惠州市</a>| <a href="http://" target="_blank">华安县</a>| <a href="http://" target="_blank">舒兰市</a>| <a href="http://" target="_blank">清水县</a>| <a href="http://" target="_blank">荔浦县</a>| <a href="http://" target="_blank">肇源县</a>| <a href="http://" target="_blank">昌都县</a>| <a href="http://" target="_blank">仪征市</a>| <a href="http://" target="_blank">吉木萨尔县</a>| <a href="http://" target="_blank">宜昌市</a>| <a href="http://" target="_blank">河北省</a>| <a href="http://" target="_blank">贺州市</a>| <a href="http://" target="_blank">西乌</a>| <a href="http://" target="_blank">遂川县</a>| <a href="http://" target="_blank">察雅县</a>| <a href="http://" target="_blank">平罗县</a>| <a href="http://" target="_blank">喀什市</a>| <a href="http://" target="_blank">梨树县</a>| <a href="http://" target="_blank">金山区</a>| <a href="http://" target="_blank">巴彦淖尔市</a>| <a href="http://" target="_blank">宿迁市</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>