Tam Sürümünü Görmek İçin : ResultSet, Socket, Serialize
Herhangi bir ResultSet`i socket uzerinden, ResultSet olarak gondermenin bir yolunu bilen var mi?
Buldugum butun kaynaklarda ResultSet yerine RowSet kullanmam oneriliyor ama ben yine de emin olmak istiyorum bir yolu olmadigina...
darky_dark
10/11/2003, 20:29
ResultSet serializable degildir, sebebini basit 1 ornek ile aciklayayim..
1 query execute edip ResultSet dondurdugunuzde, resultset icinde butun sonuclar yeralmaz. fetchsize kadar olan kismi yeralir ve siz icinde next(), absolute(int) vs gibi metotlarla dolasirken onceden alinmis fetchsize kadar kaydin sonuna gelince tekrar fetchsize kadar kaydi db den ceker ve devam eder.. Resultset in getFetchSize() ve setFetchSize(int) metotlarina bakabilirsiniz..
Eger 1 ResultSet i serialize edebilseydik ve socket uzerinden baska 1 makineye yollayabilseydik hedef makinede resultset icinde dolasirken zaman zaman data almak icin db ye baglanmak isteyecektir, bu da bilmem kac katmanli (n-tier) yapiya ve guvenlige aykiri bir durum tabii ki..
umarim anlatabilmisimdir.. kullanacaginiz yapiya gore ResultSet yerine kendiniz 1 object yazarak bu islemi gerceklestirebilirsiniz.. ya da sun in cachedrowset ini kullanabilirsiniz ancak bunun icin library download etmelisiniz.. hangi yaklasimi sececeginiz tamamen uygulamanizl alakali.. ancak resultset ten gelen data cok olabilecegi icin genelde socket uzerinden hepsini yollamak cok iyi bir fikir olmayabilir..
sevgi, saygi..
_DD_
Isin icine kendi object lerini yazmak girince daha icinden cikilmaz bir hal aliyor is, en basit ornekle; sorgu yaptiniz donen sonucu ornegin bir array`a atip, arrayi da serialize edip yolladiniz...
Client tarafinda aldiniz gosterdiniz... Buraya kadar her sey normal ve cok guzel, ama peki kayitlardan birinin update i gerekirse? Lock su bu derken ortaya basli basina bir uygulama cikiyor :)
cachedrowset i denemek en cikar yol gibi gorunuyor...
Forum Yazılımı : vBulletin v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.