Dans le but de faire une liste d'objet, ici des objet Site, je me sert des nom des colonnes d'un metadata pour retrouver mes champs et assigner la bonne valeur au Site à partir d'une base de donnée MySQl:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
public ArrayList<Site> getListSite() {
 String 	                 query=null;
 ResultSet 	    resultQuery=null;
 ResultSetMetaData   rsmd=null;
 ArrayList<Site> 	    listSite=null;
 Site 		    site=null;
 int 		    nbCol=0;
 String		    colName=null;
 try {
  query="select * from site;";
  resultQuery=this.getConnectionBDD().exeSelect(query);
  rsmd=resultQuery.getMetaData();
  nbCol=rsmd.getColumnCount();
  listSite=new ArrayList<Site>();
  while(resultQuery.next()){
   site=new Site();
   for(int cpt=1;cpt<nbCol;cpt++){
    colName=rsmd.getColumnName(cpt);
    if(colName.compareToIgnoreCase("idsite")==0){
     site.setIdSite(resultQuery.getInt(cpt));
    }else if(colName.compareToIgnoreCase("designation")==0){
     site.setDesignation(resultQuery.getString(cpt));
    }
   }
   listSite.add(site);
  }
 } catch (SQLException sqle) {
  logError.severe("SelectALL: Site \n"+sqle.toString());		
 }
 return listSite;
}
Le probleme est que les 2 champs sont bien dans mon metadata, mais que le premier est bien nomé idsite, parcontre le second est nomé null.

Je dois surement faire quelque chose de travers mais j'arrive pas à trouver.