基于緩存的方式: 從數(shù)據(jù)庫得到全部(部分)數(shù)據(jù),并將其在服務(wù)器端進(jìn)行緩存,接下來的客戶端請求,將直接從緩存中取得需要的數(shù)據(jù)。這其實(shí)就是Value List Handler模式的原理,它主要適用于數(shù)據(jù)量不是非常大,變化不是很頻繁(或者變化頻繁但是有規(guī)律)且不具有成長性的情況,比如招聘網(wǎng)站或者電子商務(wù)網(wǎng)站的大部分查詢就非常適合采取這種方式。
對于數(shù)據(jù)的緩存,有以下幾種實(shí)現(xiàn)方式: ? 直接緩存在服務(wù)器端 Value List Handler模式就采取這種方式,并且可以根據(jù)不同的情況采取不同的緩存策略,比如Transfer Object集合,CachedRowSet等,這取決于你的DAO實(shí)現(xiàn)策略。 ? 用臨時表來保存查詢結(jié)果 WLDJ(www.sys-con.com/weblogic/)雜志2004年第7期上有一篇名為“Handling Large Database Result Sets”的文章,它具體介紹了如何利用臨時表來改良Value List Handler模式以支持大型的J2EE應(yīng)用。