今天,同事終于把ValueList的實(shí)驗(yàn)做完了,ValueList0.1.7新添了許多新功能,但是,今天看到"王者之劍"的留言,又讀了一下源碼,發(fā)現(xiàn)ValueList也是取回?cái)?shù)據(jù)庫的全部數(shù)據(jù),只是把需要返回頁面的數(shù)據(jù)返回了,并不是我想的使用Hibernate的分頁方法進(jìn)行查詢數(shù)據(jù)庫的
今天,同事終于把ValueList的實(shí)驗(yàn)做完了,ValueList0.1.7新添了許多新功能,但是,今天看到"王者之劍"在我的Blog上的留言,有點(diǎn)不太相信ValueList也是取回所有的數(shù)據(jù)。 剛才,我抽空看了一下ValueList的Hibernate20Adapter的源碼,結(jié)果發(fā)現(xiàn)果然是把所有的數(shù)據(jù)都取回來了,但比DT稍強(qiáng)一些的是,它沒有把所有的Object都放入request中,只是把當(dāng)前頁要顯示的Object放入了,但這樣也同樣耗費(fèi)數(shù)據(jù)庫資源,同樣需要循環(huán),不同的是,耗費(fèi)的網(wǎng)絡(luò)資源少些,因?yàn)椋鼈骰氐膶ο笾挥幸豁摰膶ο蟆?/P>
但結(jié)果并不是我想像的,我以為,它會(huì)自己像Hibernate那樣,根據(jù)不同的數(shù)據(jù)庫采用分頁算法,使用Criteria Query設(shè)定返回在指定范圍的數(shù)據(jù)。 實(shí)驗(yàn)結(jié)果有點(diǎn)讓我失望,但畢竟比DT要強(qiáng)一些,不知道DT的1.1是不是也是這樣解決的,如果是的話,那不用等它的正式版本了,在JIRA上已經(jīng)有參考實(shí)現(xiàn)了。
但學(xué)習(xí)ValueList還是有所收獲的,看到了另一種顯示實(shí)現(xiàn)的方式,而且ValueList的確比DT強(qiáng),界面雖然不漂亮(0.1.7已經(jīng)很有DT的意思了,通過自己定制樣式表,可以作出漂亮的外觀),但比較靈活,這個(gè)工具值得繼續(xù)關(guān)注。 使用ValueList需要注意的一點(diǎn)是,如果使用MVC框架(不知道其他的框架是否這樣),從一個(gè)Controller轉(zhuǎn)發(fā)到一個(gè)View上,如果ValueList的URL屬性為""或者"?",翻頁圖標(biāo)的URL為上一個(gè)操作的URL,這和ValueList中提到的刷新按鈕有點(diǎn)相似,我又看了一下DT的用法,也需要指定URL,對于解決重復(fù)提交的問題,可以使用Struts的token來解決,我問了一下倦兔,倦兔說WebWork和Spring都有類似的解決方案,在此也感謝倦兔推薦ValueList!^_^
剛才和天天加班的段兄(SkyHero)聊了一下,感覺實(shí)在不行要自己改代碼了,比較郁悶(本來想偷懶的,呵呵。 祝段兄的加班生活早點(diǎn)結(jié)束,你的女朋友還在茫茫人海中等你去找她,不要把大好時(shí)光都浪費(fèi)在計(jì)算機(jī)上!^_^
昨天,和朋友開車去天津,在濱江路上轉(zhuǎn)了一天,我在94年取過一次,發(fā)現(xiàn)十年后再看天津已經(jīng)不是以前的那個(gè)城市了,看來是我的看法變了!不過昨天天津的氣溫有15度,很是舒服,好久沒有這樣放松了,希望每隔2個(gè)月,能出去轉(zhuǎn)轉(zhuǎn)!
兔八哥
2005-3-7 19:38 |