Bonjour, j'ai créé des traitements pour gérer mes exception s'il y en a lors de l'exécution de mon application mais il s'avère qu'il y en a une qui n'est pas prise en compte apparemment.
C'est pour le mauvais format, voici mon code
Ma fonction ci-dessus sert à modifier le prix de l'un des produits de ma BDD.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 public void modifProduit(String nom, float prix, String categorie) { String nomM = nom; String categorieE = categorie; float prixX = prix; final String driver ="com.mysql.jdbc.Driver"; String sql = "UPDATE " + categorieE + " SET `nom` = '" + nomM + "', `prix` = '" + prixX + "' WHERE `nom` = '" + this.nomProduit + "';"; final String url = "jdbc:mysql://127.0.0.1/***"; final String user = "***"; final String passwd = "***"; Connection con = null; Statement state = null; try { // Chargement du driver Class.forName(driver).newInstance(); // Connexion � la BDD con = DriverManager.getConnection(url, user, passwd); // JOptionPane.showMessageDialog(null, "Connexion �tablie!!"); // Creation de l'objet Statement state = con.createStatement(); // Execution de la requete state.executeUpdate(sql); JOptionPane.showMessageDialog(null, "Produit modifié avec succès"); // Fermeture des objets utilis�s state.close(); } catch(ClassNotFoundException e) { System.err.println("Class non trouvée " + driver); } catch (SQLException e) { System.err.println("SQL erreur : " + sql + " " + e.getMessage()); } catch (NumberFormatException e) { JOptionPane.showMessageDialog(null, "Veuillez vérifier le format des données saisies."); } catch (Exception e) { e.printStackTrace(); } finally { try { if (con != null) { con.close(); } } catch (Exception e) { System.err.println(e); } }
Quand je tape par exemple "3,5" au lieu de "3.5", j'ai donc une exception de type NumberFormatExceptionet je devrais avoir un fenêtre qui s'affiche avec un message "Veuillez vérifier le format des données saisies" mais ce n'est pas le cas, j'ai une erreur dans mon console de type NumberFormatException. :/
Comment ça se fait qu'elle n'est pas traitée?
Partager