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:
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.
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; }
Je dois surement faire quelque chose de travers mais j'arrive pas à trouver.
![]()
Partager