Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/fmgVen/src/net/fmg/ven/SorguEslestirici.java

    r11 r26  
    33 * 
    44 * 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) 
    66 * 
    7  * Ven - Ayar Yerine Gelenek veritabaný eriþim nesnesi 
     7 * Ven - Ayar Yerine Gelenek veritabanı erişim nesnesi 
    88 */ 
    99 
     
    3030 
    3131/** 
    32  * 'Ayar yerine gelenek' yaklaþýmýnda üretilmiþ sorgunun sonucunu belirtilen nesneye eþler 
     32 * 'Ayar yerine gelenek' yaklaşımında üretilmiş sorgunun sonucunu belirtilen nesneye eşler 
    3333 * @author Fatih Mehmet Güler 
    3434 */ 
     
    5757        long t1 = System.currentTimeMillis(); 
    5858        final List sonuclar = new LinkedList(); 
    59         final String tabloAdi = Cevir.vt(nesneSinifi.getSimpleName()); 
     59        final String tabloAdi = Cevir.vt(Cevir.isim(nesneSinifi.getName())); 
    6060        final Set sutunlar = new HashSet(); 
    6161         
     
    6767        } 
    6868        ); 
    69         System.out.println("Listeleme zamaný="+(System.currentTimeMillis()-t1));         
     69        System.out.println("Listeleme zamanı="+(System.currentTimeMillis()-t1));         
    7070        return sonuclar; 
    7171    } 
     
    7373    private void esle(ResultSet rs, Set sutunlar, String tabloAdi, Class nesneSinifi, List ustListe){ 
    7474        try{ 
    75             if (!sutunlar.contains(tabloAdi+"_no")) return; //bu nesne sütunlar arasýnda hiç yok 
     75            if (!sutunlar.contains(tabloAdi+"_no")) return; //bu nesne sütunlar arasında hiç yok 
    7676            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()) 
    7979            wr.setPropertyValue("no",no); 
    8080            Object nesne = wr.getWrappedInstance(); 
    8181            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ü. 
    8383                Object listedekiNesne = (Object) it.next(); 
    84                 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 
     84                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 
    8787                    break; 
    8888                } 
    8989            } 
    90             if (esle) ustListe.add(nesne); //bulamadýk, yani listede yok bunu ekliyoruz 
     90            if (esle) ustListe.add(nesne); //bulamadık, yani listede yok bunu ekliyoruz 
    9191            PropertyDescriptor[] pdArr = wr.getPropertyDescriptors(); 
    9292            for (int i = 0; i < pdArr.length; i++) { 
     
    9595                Class alanSinifi = pd.getPropertyType(); 
    9696                String sutun = tabloAdi+"_"+alanAdi; 
    97                 if (esle && vtSiniflari.contains(alanSinifi)){ //veritabaný nesneleri 
     97                if (esle && vtSiniflari.contains(alanSinifi)){ //veritabanı nesneleri 
    9898                    if(sutunlar.contains(sutun)){ 
    9999                        if(hataAyiklama) System.out.println(">>alan bulundu "+sutun); 
    100100                        wr.setPropertyValue(pd.getName(),rs.getObject(sutun)); 
    101101                    }else{ 
    102                         if(hataAyiklama) System.out.println("--alan bulunamadý: "+sutun); 
     102                        if(hataAyiklama) System.out.println("--alan bulunamadı: "+sutun); 
    103103                    } 
    104104                } 
     
    106106                    if(sutunlar.contains(sutun+"_no")){ 
    107107                        if(hataAyiklama) System.out.println(">>nesne bulundu "+sutun); 
    108                         List list = new ArrayList(1); //tek sonuç olacaðýný biliyoruz 
     108                        List list = new ArrayList(1); //tek sonuç olacağını biliyoruz 
    109109                        esle(rs,sutunlar,sutun,alanSinifi,list); 
    110110                        if(list.size()>0)wr.setPropertyValue(pd.getName(),list.get(0)); 
    111111                    }else{ 
    112                         if(hataAyiklama) System.out.println("--nesne bulunamadý: "+sutun); 
     112                        if(hataAyiklama) System.out.println("--nesne bulunamadı: "+sutun); 
    113113                    } 
    114114                } 
     
    119119                        esle(rs,sutunlar,sutun,bagNesneSinifi,(List)wr.getPropertyValue(pd.getName())); 
    120120                    }else{ 
    121                         if(hataAyiklama) System.out.println("--liste bulunamadý: "+sutun); 
     121                        if(hataAyiklama) System.out.println("--liste bulunamadı: "+sutun); 
    122122                    } 
    123123                } 
    124124                 
    125125            } 
    126         } catch(SQLException ex){ 
     126        } catch(Exception ex){ 
    127127            ex.printStackTrace(); 
    128128        } 
Note: See TracChangeset for help on using the changeset viewer.