Utilisation swing
mb42
Messages postés
553
Statut
Membre
-
mb42 Messages postés 553 Statut Membre -
mb42 Messages postés 553 Statut Membre -
Bonjour,
je fait test connexion avec base de donne et ca marche avec sucée
maintenant je veux faire l'ajout en mode graphique
je veux faire une bonne stratégie de développement.
1-créer une class etudiant (contient cin,nom,prenom)
2-créer interface ADDetudiant
2-créer une class connexion
après un simple recherche sur internet j'entends de ce terme "PreparedStatement"
voila le code de bouton 'valider'
qui sert a enregistrer le donnes saisies dans la base de donné
et pour la classe connexion que dois ouvrir connexion
je suppose que dois être comme suit;
pouvez m'aider a compléter ce code (dans le bouton "valider"
merci d'avance
je fait test connexion avec base de donne et ca marche avec sucée
maintenant je veux faire l'ajout en mode graphique
je veux faire une bonne stratégie de développement.
1-créer une class etudiant (contient cin,nom,prenom)
2-créer interface ADDetudiant
2-créer une class connexion
après un simple recherche sur internet j'entends de ce terme "PreparedStatement"
voila le code de bouton 'valider'
qui sert a enregistrer le donnes saisies dans la base de donné
private void jButtonValiderActionPerformed(java.awt.event.ActionEvent evt) {
Etudiant e = new Etudiant();
e.setCin(Integer.parseInt(jTextFieldCIN.getText()));
e.setNom(jTextFieldNom.getText());
e.setPrenom(jTextFieldPrenom.getText());
// ici je dois instancier la class connexion pour ouvrir connection
// faire String sql = "INSERT INTO etudiant (cin, nom, prenom)
//VALUES (?, ?, ?)";
//PreparedStatement statement = connection.prepareStatement(sql);
//statement.set.....................
//fermer connexion
et pour la classe connexion que dois ouvrir connexion
je suppose que dois être comme suit;
public class connexion
{
public static void main(String[] args) {
Connection connexion;
Statement statement;
ResultSet resultat;
try {
Class.forName("com.mysql.jdbc.Driver");
connexion = DriverManager.getConnection("jdbc:mysql://localhost/test","root","");
statement = connexion.createStatement();
}catch(Exception e){
System.out.print("Impossible de se connecté à MySQL");
}
}
pouvez m'aider a compléter ce code (dans le bouton "valider"
merci d'avance
A voir également:
- Utilisation swing
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- La ressource demandée est en cours d'utilisation - Forum Téléphones & tablettes Android
- Logiciel en Cours d'utilisation ? ✓ - Forum Logiciels
- Family link temps d'utilisation ne fonctionne pas - Forum Contrôle parental
2 réponses
j'essaye avec ce code :
class interfaceEtudiant :
class connection
mais elle n'ajoute pas a la base de donne
voila l'erreur
class interfaceEtudiant :
public class interfaceEtudiant extends javax.swing.JFrame {
....
....
....
..
private void jButtonValiderActionPerformed(java.awt.event.ActionEvent evt) {
Integer cin=Integer.parseInt(jTextFieldCIN.getText());
String nom=jTextFieldNom.getText();
String prenom=jTextFieldPrenom.getText();
String classe=jTextFieldClasse.getText();
String tel=jTextFieldTel.getText();
String email=jTextFieldEmail.getText();
connection c=new connection();
try {
String sql = "INSERT INTO etudiant (CIN, nom, prenom,classe,tel,email) VALUES(?,?,?.?,?,?)";
connection.connection.createStatement();
PreparedStatement statement = connection.connection.prepareStatement(sql);
statement.setObject(1,new Integer(123),Types.INTEGER);
statement.setObject(2,nom,Types.VARCHAR);
statement.setObject(3,prenom,Types.VARCHAR);
statement.setObject(4,classe,Types.VARCHAR);
statement.setObject(5,tel,Types.VARCHAR);
statement.setObject(6,email,Types.VARCHAR);
statement.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(interfaceEtudiant.class.getName()).log(Level.SEVERE, null, ex);
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new interfaceEtudiant().setVisible(true);
}
});
}
....
.....
...
class connection
public class connection {
//Connection connexion;
//Statement statement;
// static ResultSet resultat;
static String driver = "com.mysql.jdbc.Driver";
static String url = "jdbc:mysql://localhost/test";
static String login = "root";
static String password = "";
static Connection connection = null;
static Statement statement;
public static void main(String[] args) {
try{
Class.forName(driver);
connection = DriverManager.getConnection(url,login,password);
statement = connection.createStatement();
//travail avec les données
}
catch(ClassNotFoundException cnfe){
System.out.println("Driver introuvable : ");
cnfe.printStackTrace();
}
catch(SQLException sqle){
System.out.println("Erreur SQL : ");
//Cf. Comment gérer les erreurs ?
}
catch(Exception e){
System.out.println("Autre erreur : ");
e.printStackTrace();
}
finally
{
if(connection!=null)
{try{connection.close();}
catch(Exception e){e.printStackTrace();}}
//etc.
}
}
}
mais elle n'ajoute pas a la base de donne
voila l'erreur
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Pack2.interfaceEtudiant.jButtonValiderActionPerformed(interfaceEtudiant.java:196)
at Pack2.interfaceEtudiant.access$200(interfaceEtudiant.java:21)
at Pack2.interfaceEtudiant$3.actionPerformed(interfaceEtudiant.java:86)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)