Changeset 22 for trunk/fmgVen/src/net/fmg/ven/SorguEslestirici.java
- Timestamp:
- Jul 14, 2010, 10:51:10 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/fmgVen/src/net/fmg/ven/SorguEslestirici.java
r11 r22 3 3 * 4 4 * Created on December 18, 2006, 10:40 AM 5 * (4.12.06 tarihli SpringDaoDeneme çal ýþmasýndan derlenmiþtir)5 * (4.12.06 tarihli SpringDaoDeneme çalışmasından derlenmiştir) 6 6 * 7 * Ven - Ayar Yerine Gelenek veritaban ý eriþim nesnesi7 * Ven - Ayar Yerine Gelenek veritabanı erişim nesnesi 8 8 */ 9 9 … … 30 30 31 31 /** 32 * 'Ayar yerine gelenek' yakla þýmýnda üretilmiþ sorgunun sonucunu belirtilen nesneye eþler32 * 'Ayar yerine gelenek' yaklaşımında üretilmiş sorgunun sonucunu belirtilen nesneye eşler 33 33 * @author Fatih Mehmet Güler 34 34 */ … … 67 67 } 68 68 ); 69 System.out.println("Listeleme zaman ý="+(System.currentTimeMillis()-t1));69 System.out.println("Listeleme zamanı="+(System.currentTimeMillis()-t1)); 70 70 return sonuclar; 71 71 } … … 73 73 private void esle(ResultSet rs, Set sutunlar, String tabloAdi, Class nesneSinifi, List ustListe){ 74 74 try{ 75 if (!sutunlar.contains(tabloAdi+"_no")) return; //bu nesne sütunlar aras ýnda hiç yok75 if (!sutunlar.contains(tabloAdi+"_no")) return; //bu nesne sütunlar arasında hiç yok 76 76 Object no = rs.getObject(tabloAdi+"_no"); 77 if (no==null) return; //bu nesne sütunlar aras ýnda var ama null, muhtemelen left join den dolayý78 BeanWrapper wr=new BeanWrapperImpl(nesneSinifi); //Zaten class introspectionunu sakl ýyor (CachedIntrospectionResults.forClass())77 if (no==null) return; //bu nesne sütunlar arasında var ama null, muhtemelen left join den dolayı 78 BeanWrapper wr=new BeanWrapperImpl(nesneSinifi); //Zaten class introspectionunu saklıyor (CachedIntrospectionResults.forClass()) 79 79 wr.setPropertyValue("no",no); 80 80 Object nesne = wr.getWrappedInstance(); 81 81 boolean esle = true; 82 for (Iterator it = ustListe.iterator(); it.hasNext();) { //listenin içinde indexOf ve get(i) ile birkaç kez dola þmak yerinde bir kez dolaþmýþ olalým, onlar da ayný þeyi yapýyor çünkü.82 for (Iterator it = ustListe.iterator(); it.hasNext();) { //listenin içinde indexOf ve get(i) ile birkaç kez dolaşmak yerinde bir kez dolaşmış olalım, onlar da aynı şeyi yapıyor çünkü. 83 83 Object listedekiNesne = (Object) it.next(); 84 if (nesne.equals(listedekiNesne)){ //NOT: bunu no'lar ý karþýlaþtýrarak da yapabiliriz85 wr.setWrappedInstance(listedekiNesne); //listede zaten var onu kullanmal ýyýz86 esle = false; // ve tekrar e þleme yapmamalýyýz84 if (nesne.equals(listedekiNesne)){ //NOT: bunu no'ları karşılaştırarak da yapabiliriz 85 wr.setWrappedInstance(listedekiNesne); //listede zaten var onu kullanmalıyız 86 esle = false; // ve tekrar eşleme yapmamalıyız 87 87 break; 88 88 } 89 89 } 90 if (esle) ustListe.add(nesne); //bulamad ýk, yani listede yok bunu ekliyoruz90 if (esle) ustListe.add(nesne); //bulamadık, yani listede yok bunu ekliyoruz 91 91 PropertyDescriptor[] pdArr = wr.getPropertyDescriptors(); 92 92 for (int i = 0; i < pdArr.length; i++) { … … 95 95 Class alanSinifi = pd.getPropertyType(); 96 96 String sutun = tabloAdi+"_"+alanAdi; 97 if (esle && vtSiniflari.contains(alanSinifi)){ //veritaban ýnesneleri97 if (esle && vtSiniflari.contains(alanSinifi)){ //veritabanı nesneleri 98 98 if(sutunlar.contains(sutun)){ 99 99 if(hataAyiklama) System.out.println(">>alan bulundu "+sutun); 100 100 wr.setPropertyValue(pd.getName(),rs.getObject(sutun)); 101 101 }else{ 102 if(hataAyiklama) System.out.println("--alan bulunamad ý: "+sutun);102 if(hataAyiklama) System.out.println("--alan bulunamadı: "+sutun); 103 103 } 104 104 } … … 106 106 if(sutunlar.contains(sutun+"_no")){ 107 107 if(hataAyiklama) System.out.println(">>nesne bulundu "+sutun); 108 List list = new ArrayList(1); //tek sonuç olaca ðýnýbiliyoruz108 List list = new ArrayList(1); //tek sonuç olacağını biliyoruz 109 109 esle(rs,sutunlar,sutun,alanSinifi,list); 110 110 if(list.size()>0)wr.setPropertyValue(pd.getName(),list.get(0)); 111 111 }else{ 112 if(hataAyiklama) System.out.println("--nesne bulunamad ý: "+sutun);112 if(hataAyiklama) System.out.println("--nesne bulunamadı: "+sutun); 113 113 } 114 114 } … … 119 119 esle(rs,sutunlar,sutun,bagNesneSinifi,(List)wr.getPropertyValue(pd.getName())); 120 120 }else{ 121 if(hataAyiklama) System.out.println("--liste bulunamad ý: "+sutun);121 if(hataAyiklama) System.out.println("--liste bulunamadı: "+sutun); 122 122 } 123 123 }
Note: See TracChangeset
for help on using the changeset viewer.