Hibernate中query語句有什么用

這篇文章給大家分享的是有關Hibernate中query語句有什么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團隊的力量開發(fā)出優(yōu)質的產(chǎn)品。創(chuàng)新互聯(lián)公司堅持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因為“專注所以專業(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站建設、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),微信小程序,軟件按需制作網(wǎng)站等一站式互聯(lián)網(wǎng)企業(yè)服務。

今天要在sqlserver環(huán)境下做一個簡單的增刪改功能,要用到分頁,開始直接用oracle數(shù)據(jù)庫環(huán)境一直用的一個jdbc重構過的類處理,發(fā)現(xiàn)不行,才想起oracle和sqlserver的分頁sql語句寫法是很不一樣的,于是打算google一下,緊接又想,何不先看看Hibernate在sqlserver環(huán)境是怎么處理分頁的(我這里用的是Hibernate 3.0)。

先把Hibernate配置文件的show_sql改成true,啟動tomcat,在項目原來的一個功能里找到一個翻頁的地方,比如每頁顯示兩條,***頁的時候,Hibernate query語句是:SELECT TOP 2 * FROM  …… 恩,對的,看來Hibernate還比較聰明,***頁直接用top語句,可是點下一頁,當查詢的記錄應是3-4條時,Hibernate query語句是: SELECT TOP 4 * FROM…… 不理解了,難道Hibernate這么笨嗎,如果我要查的是第100萬條到100萬零10條的記錄,難道他也是先把這100萬零10條全部查出來嗎?

但是我測試的結果就是如果我要去第5000頁的數(shù)據(jù),他就是select top 10000 * from ……這樣取出來的。但是如果把sql dialect  改成oracle,處理是用  rownum    直接去取需要的中間那么多條記錄的。明天升級到***的Hibernate 3.3試試看會不會這樣。難道java的開源框架對sql server這么感冒? 呵呵

監(jiān)控了下數(shù)據(jù)庫,發(fā)現(xiàn)公司的php程序在翻頁時也是這樣處理的,我就奇怪了,sql server2005中也有rownum概念的啊??磥泶a從sql server2000到2005以后還是要做一些優(yōu)化的

感謝各位的閱讀!關于“Hibernate中query語句有什么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前名稱:Hibernate中query語句有什么用
文章源于:http://muchs.cn/article22/gpjcjc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、做網(wǎng)站、企業(yè)建站、、自適應網(wǎng)站面包屑導航

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站