2009-09-28 63 views
0

我有一張大約有10.000條記錄的表格(加上11個表格中的詳細數據)。我想以可瀏覽的形式顯示數據(第一個,之前的&,最後一個按鈕)。許多記錄:1或1同時創建業務對象?

我想過檢索所有記錄,將數據放入業務對象集合並將表單綁定到集合。仔細想想,它可能需要一段時間,可能會導致大量的內存使用...

所以,也許我應該只是檢索第一個記錄,並得到下一個請求時?你怎麼看?

回答

0

如果數據頻繁使用但不經常更改,則可以考慮將其緩存在應用程序級別上。如果你在表單級檢索數據,那麼速度和內存消耗之間的一個很好的折衷就是獲得11條記錄(當前,前5條和下5條),如果用戶經過檢索到的記錄,再次獲取下一條5等。

1

如果您不使用nHibernate或iBatis等OR/M,請讓我建議現在。我使用nHibernate - 但我聽到關於iBatis的很棒的事情。他們有批量和延遲加載內置和可配置。另外,當下一次出現這種情況時,由於預先建立了靈活的數據訪問層,您將在幾分鐘內獲得此功能。

如果你不打算走OR/M的路線,我會建議一個一個地抓取,直到性能成爲問題 - 爲什麼事情不必要地事前複雜化?如果性能成爲問題,那麼考慮批量抓取和緩存。

+0

大家都建議要這樣做。我一直躲着它,因爲它意味着丟掉幾個月的工作...... – 2009-10-02 13:02:12

+0

可以理解。我學到的一件事就是在考慮是否放棄工作或堅持下去時對投資回報率進行評估。在開發和維護的長期過程中,拋棄「數月」的工作可以節省更多的時間。有一件事需要考慮:未來的「新開發人員」是否會更傾向於瞭解或學習有據可查的,廣泛採用的OR/M或您的自定義數據訪問層?祝你好運。 – 2009-10-03 17:44:46

+0

我做出了決定,並把我的東西扔了=) – 2009-10-07 14:14:19

相關問題