Fonction java

cs_betoile
Messages postés
28
Date d'inscription
vendredi 11 juin 2010
Statut
Membre
Dernière intervention
22 mai 2013
- 29 mai 2011 à 21:21
cs_betoile
Messages postés
28
Date d'inscription
vendredi 11 juin 2010
Statut
Membre
Dernière intervention
22 mai 2013
- 30 mai 2011 à 13:44
bonjour tout le monde j'ai un probleme avec ma methode qui me retourne le chiffre 0 alors que je doi recuperer un autre chiffre
jai declaré ma variable resultat ! : static double resultat;
je fé apel a ma methode dans main comme ceci
double res=recup(filename);
System.out.println(res)


public static double recup( String nom){
try{
//la connection a ma base de données

ResultSet res = st.executeQuery("SELECT doc_rsv.nom_doc,doc_rsv.score FROM doc_rsv WHERE(nom_doc='"+nom+"') ");
while(res.next()){
ResultSetMetaData resultMeta = res.getMetaData();
//System.out.print("\t" + res.getString("nom_doc") +"\t" + res.getDouble("score") + "\t | ");
double resultat=res.getDouble("score");
}


}catch (Exception e){

e.printStackTrace();

}
return resultat;


aidez moi svppp merci d'avance

2 réponses

cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
366
30 mai 2011 à 08:50
Je ne comprends pas comment tu as déclaré ta variable résultat en static, la fonction te retourne la variable résultat initialisée comme ca :
double resultat=res.getDouble("score"); 

Quel est le chiffre que tu attends, fait un select sur ta base à l'aide d'une invite de commande pour vérifier que ce n'est pas 0 que tu dois recuperer.
0
cs_betoile
Messages postés
28
Date d'inscription
vendredi 11 juin 2010
Statut
Membre
Dernière intervention
22 mai 2013

30 mai 2011 à 13:44
je lai regelé comme ceci
while(res.next()){
ResultSetMetaData resultMeta = res.getMetaData();
System.out.print("\t" + res.getString("nom_doc") +"\t" + res.getFloat("score") +"\t| ");

z=(float) (z+somme( res.getFloat("score")));
System.out.println("score:"+z);
mais le problem c qu'il me retourne sa
141920.xml 0.1 | score:0.1
51122.xml 0.1 | score:0.2
14134.xml 0.7 | score:0.9
8190.xml 0.3 | score:1.2
20316.xml 0.1 | score:1.3000001
18957.xml 0.3 | score:1.6000001
moi c le dernier score qui m'interesse



dans ma fonction main ya ceci pour lui faire appel(genre je parcours un repertoire contenant des document et pour chaque doc je recupere ses attributs)
moi je veux faire la sommes des scores des attributs +le score du doc)
while(res.next()){
ResultSetMetaData resultMeta = res.getMetaData();
System.out.println("\t" + res.getString("nom_doc") +"\t\t\t" + res.getDouble("score") + "\t | ");
}

try {

DefaultHandler handler = new b();// je fé appel a lautre classe

XMLReader parser = XMLReaderFactory.createXMLReader();
parser.setContentHandler(handler);

parser.parse(phrase+filename);
System.out.println("**********************");//aucun lien

comment faire svp?
0