哭啊,剛才點錯了,本來就寫好了,強烈建議增加自動儲存功能!!!!!!!!!!!!!!
封裝類的初始化程式如:
public
synchronized
void
init(string sql1, string sql2,
intps, string cp)
...
sql可能是這樣:
select count(*) from table";
select * from table";
在jsp頁面**如下:
rownum
=pagelist.getcurrentpagesize();
intfirstrownum
=pagelist.getfirstrownum();
try...
catch
(exception e)
... finally
...
這樣的做法是這樣的:將所有記錄的資訊都儲存在resultset中,然後在頁面上通過迴圈控制某條記錄是否顯示在頁面上。這樣的弊端就是將所有記錄的資訊都查詢到記憶體中,如果記錄集很大的話,勢必影響效能。
最近看了別人bbs系統中對於分頁的實現,也是jsp版本的,原理如下:
int pagesize = 50;
int currentpage;
int startnum = (pagesize-1)*currentpage+1;
int endnum = pagesize*currentpage;
public string getlist()
...rs.close();
rs = null;
}catch(exception e)...finally...catch(exception ex)...{} }
s = sb.substring(0,sb.length()-1);
return s; }
這樣做的道理是,將當前也要顯示的記錄的id號先查詢出來,然後在jsp頁面中的sql可以這樣寫:
string strsql ="
select * from table where id in (上面函式得到的s) order by id asc";
這樣保證了查詢的結果集都是當前頁面的乙個結果集,因為每頁所顯示的記錄數都很有限,所以即使資料量很大也是沒有關係。
因為對於快取的處理還沒有什麼概念,所以不在本文的思考範圍內。
關於分頁的思考
最近拜讀了yahoo的以及mysql performance blog的,分頁優化很牛x.yahoo的那篇文章主要是講在分頁中結合索引的使用優化order by,limit以及本身的select操作,主要減少limit m,n中m的值,甚至沒有m來減少分頁操作掃瞄的行數.並對分頁的展示進行了討論 1...
關於Mysql外來鍵從新學習
參考 說實話,這是乙個抄剩飯的文件。因為考試。在實際開發中,可能用外來鍵的情況不多,至少我設計我自己的專案是不會用外來鍵。用了後,資料不自由了。當然,如果表設計後,給資料表加上外來鍵,可能是一種不錯的選擇,但,自己的專案還是不會使用外來鍵來約束自己的資料。至少我在 中,做到部分的資料約束。innod...
關於博弈的思考
博弈,決策,永恆的主題 在博弈的過程中不要考慮是否公平,而是要考慮是否對你自己有利。這句話很值得思考。人生無時無刻不在博弈,無論是在微觀上,兩個人之間的談話 還是在巨集觀上每次人生抉擇的過程,博弈,總是在乙個恰當的視點上讓人設身處地的感受到。在博弈的過程中,公平與否,很多人都在抱怨 有的時候是與自己...