une date dans un jtextfilde

zineb2206_9777
une date dans un jtextfilde

Bonjour tout le monde
j'ai une methode qui prend comme parametre une date et je veux afficher dans un jtable le contenu de la table selon la date que je dois inserer dans un jtextfilde
NB= la date est un champs de la table
remarque
j'arrive a afficher sur le jtable le contenu de la table ce qui ne marche pas c'est l'affichage selon une date.
et voila le code de la methode

public static Vector getListevaleur( Date d) {


Vector vdata=new Vector();
ResultSet rs=null;
try{
Connection conn=BDConnection.connecter();

Statement stmt=null;
try{
stmt= (Statement) conn.createStatement();
rs=stmt.executeQuery("select * from Valeur where date='"+d+"'");
ResultSetMetaData rsmd=rs.getMetaData();
int colonneccount=rsmd.getColumnCount();
Vector vcolonnename = new Vector();
for (int i =1; i<= colonneccount ;i++)vcolonnename.addElement(rsmd.getColumnName(i));
vdata.addElement(vcolonnename);
Vector vligne;
while(rs.next()){
vligne = new Vector();
for(int i=1 ;i<=colonneccount ; i++) vligne.addElement(rs.getObject(i));
vdata.addElement(vligne);
}
}
finally{
rs.close();
stmt.close();
BDConnection.deconnecter();
}
}
catch(Exception e){}
return vdata;
}

/// et voila le chargement du tableau

private void chargerTableau() {
Date d = new Date(jTextField1.getText());
vdata= getListevaleur(d);
Vector vcolonnename=(Vector)vdata.elementAt(0);
vdata.removeElementAt(0);
tablegroupe.setModel(new DefaultTableModel(vdata,vcolonnename));

}

//// et voila le code que je mets sous l'événement du boutton

private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:

Date d = new Date(jTextField1.getText());

chargerTableau();

}
merci :) [/b]

nasix

Salut zineb2206,

J'ai deux questions pour toi :

La première :
Si tu fait un System.out.println(d) dans ta fonction getListevaleur, ça t'affiche quoi ?

la deuxième :
Comment est ce que les dates sont insérées dans la table Valeur.

Je me demande ça juste pour valider ta requête, parce qu'il se peut bien que ça bloque à ce niveau.

Une dernière chose, ça t'affiche quoi quand tu veux afficher selon la date.

zineb2206_9777

Bonjour nasix
merci pour la reponse
alors pour la 2eme question la date dans la table valeur est de type Date/heure
pour la derniere question ça me donne aucun resultat quand j'affiche selon la date par contre
j'ai essayer d'afficher selon d'autre champs de la table "text"ou "numerique" on mettons String ou int comme parametre de la methode et ça m'a donner un bon resulta et j'ai pu afficher la ligne demander le probleme se pose uniquement au niveau du type date et pour votre 1ere question excusez moi je ne peut vous repondre mainetenant car je n'ai pas l'application en main je vous reponderais demain inchallah.
bonne fin de soiree.

nasix

Salut,

Pourras-tu rajouter un affichage de la date dans la méthode chargerTableau comme suis :

private void chargerTableau() {
Date d = new Date(jTextField1.getText());
System.out.println(d); // ligne à rajouter
vdata= getListevaleur(d);
Vector vcolonnename=(Vector)vdata.elementAt(0);
vdata.removeElementAt(0);
tablegroupe.setModel(new DefaultTableModel(vdata,vcolonnename));

}

Puis fais un petit code qui affiche les valeurs que tu as dans la colonne date de ta table Valeur comme suit :

...
rs=stmt.executeQuery("select * from Valeur where");
while(rs.next()){
System.out.println(rs.getString("date"));
} 
...

Fais ça et dis ce que ça t'affiche, pour le premier code et pour le deuxième.

zineb2206_9777

Bonjour

voila le format de la date sur la table

2012-12-12 00:00:00.0

nasix

Salut,

Et l'affichage de d : System.out.println(d) dans ta fonction, ça affiche quoi ?

zineb2206_9777

je ne suis pas arrivé a l'afficher

nasix

Si tu pourras nous poster toute ta classe, on pourra mieux t'aider.

zineb2206_9777

public class Valeur extends javax.swing.JFrame {
Vector vdata=null;
private void chargerTableau() {
Date d = new Date(jTextField1.getText());
System.out.println(d);
vdata= getListevaleur(d);
Vector vcolonnename=(Vector)vdata.elementAt(0);
vdata.removeElementAt(0);
tablegroupe.setModel(new DefaultTableModel(vdata,vcolonnename));

}
public Valeur() {
initComponents();
}

public static Vector getListevaleur(Date d) {


Vector vdata=new Vector();
ResultSet rs=null;
try{
Connection conn=BDConnection.connecter();

Statement stmt=null;
try{
stmt= (Statement) conn.createStatement();
rs=stmt.executeQuery("select * from Valeur ");
ResultSetMetaData rsmd=rs.getMetaData();
int colonneccount=rsmd.getColumnCount();
Vector vcolonnename = new Vector();
for (int i =1; i<= colonneccount ;i++)vcolonnename.addElement(rsmd.getColumnName(i));
vdata.addElement(vcolonnename);
Vector vligne;
while(rs.next()){
System.out.println(rs.getString("d"));

vligne = new Vector();
for(int i=1 ;i<=colonneccount ; i++) vligne.addElement(rs.getObject(i));
vdata.addElement(vligne);
}
}
finally{
rs.close();
stmt.close();
BDConnection.deconnecter();
}
}
catch(Exception e){}
return vdata;
}

private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:

Date d = new Date(jTextField1.getText());
// getListevaleur(d);
chargerTableau();
chargerid();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Valeur().setVisible(true);
}
});
}[/code]

zineb2206_9777

public class Valeur extends javax.swing.JFrame { 
Vector vdata=null; 
private void chargerTableau() { 
Date d = new Date(jTextField1.getText()); 
System.out.println(d); 
vdata= getListevaleur(d); 
Vector vcolonnename=(Vector)vdata.elementAt(0); 
vdata.removeElementAt(0); 
tablegroupe.setModel(new DefaultTableModel(vdata,vcolonnename)); 

} 
public Valeur() { 
initComponents(); 
} 

public static Vector getListevaleur(Date d) { 


Vector vdata=new Vector(); 
ResultSet rs=null; 
try{ 
Connection conn=BDConnection.connecter(); 

Statement stmt=null; 
try{ 
stmt= (Statement) conn.createStatement(); 
rs=stmt.executeQuery("select * from Valeur "); 
ResultSetMetaData rsmd=rs.getMetaData(); 
int colonneccount=rsmd.getColumnCount(); 
Vector vcolonnename = new Vector(); 
for (int i =1; i<= colonneccount ;i++)vcolonnename.addElement(rsmd.getColumnName(i)); 
vdata.addElement(vcolonnename); 
Vector vligne; 
while(rs.next()){ 
System.out.println(rs.getString("d")); 

vligne = new Vector(); 
for(int i=1 ;i<=colonneccount ; i++) vligne.addElement(rs.getObject(i)); 
vdata.addElement(vligne); 
} 
} 
finally{ 
rs.close(); 
stmt.close(); 
BDConnection.deconnecter(); 
} 
} 
catch(Exception e){} 
return vdata; 
} 

private void jButton3MouseClicked(java.awt.event.MouseEvent evt) { 
// TODO add your handling code here: 

Date d = new Date(jTextField1.getText()); 
// getListevaleur(d); 
chargerTableau(); 
chargerid(); 
} 
public static void main(String args[]) { 
java.awt.EventQueue.invokeLater(new Runnable() { 
public void run() { 
new Valeur().setVisible(true); 
} 
}); 
}
zineb2206_9777

public class Valeur extends javax.swing.JFrame {

 Vector vdata = null;

 private void chargerTableau() {
        Date d = new Date(jTextField1.getText());
        System.out.println(d);
        vdata = getListevaleur(d);
        Vector vcolonnename = (Vector) vdata.elementAt(0);
        vdata.removeElementAt(0);
        tablegroupe.setModel(new DefaultTableModel(vdata, vcolonnename));

    }


 public static Vector getListevaleur(Date d) {


        Vector vdata = new Vector();
        ResultSet rs = null;
        try {
            Connection conn = BDConnection.connecter();

            Statement stmt = null;
            try {
                stmt = (Statement) conn.createStatement();
                rs = stmt.executeQuery("select *  from Valeur ");
                ResultSetMetaData rsmd = rs.getMetaData();
                int colonneccount = rsmd.getColumnCount();
                Vector vcolonnename = new Vector();
                for (int i = 1; i <= colonneccount; i++) {
                    vcolonnename.addElement(rsmd.getColumnName(i));
                }
                vdata.addElement(vcolonnename);
                Vector vligne;
                while (rs.next()) {
                    System.out.println(rs.getString("d"));

                    vligne = new Vector();
                    for (int i = 1; i <= colonneccount; i++) {
                        vligne.addElement(rs.getObject(i));
                    }
                    vdata.addElement(vligne);
                }
            } finally {
                rs.close();
                stmt.close();
                BDConnection.deconnecter();
            }
        } catch (Exception e) {
        }
        return vdata;
    }

 private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {                                      
        // TODO add your handling code here:

        Date d = new Date(jTextField1.getText());
        // getListevaleur(d);
        chargerTableau();
        chargerid();
    }                                     

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new Valeur().setVisible(true);
            }
        });
    }

excusez le désordre

nasix

Hello,

Je suis désolé mais, ton code me parrait incomplet, c'est quoi jButton3 ? à priori c'est un JButton, mais je ne vois pas sa déclaration, je ne sais pas s'il appartient bien à ta JFrame, essaies de donner plus de détail.

ça ne gène personne si tu nous poste tout ton code. Même si tu as plusieurs classes, mets juste avant chaque code le nom de la classe à qui il appartient.

Espérant bien qu'on pourra t'aider.

zineb2206_9777

Bonsoir,
merci de se deranger pour ca

effectivement le jbutton3 est un jbutton et j'ai juste poster l'evenement du button de l'affichage car c'est la ou j'ai le probleme mes les autres composant de ma jframe marche bien meme celui la il foctionne bien quand j'enleve les parametres de la methode ou quand je mets du String ou int
bonne soiree

zineb2206_9777

Bonjour Tout le monde

c'est quoi la diférrence entre java.sql.Date et java.util.Date
est ce que c'est juste la meme classe qui se trouve dans deux package?merci

nasix

Salut Zineb,

En fait, la différence entre les deux classes est mince.

1- La classe java.sql.Date est une classe fille de java.util.Date.
2- La classe java.util.Date est faite pour représenter tout type de date alors que java.sql.Date est faite spécialement pour les dates d'une base de données.raison pour laquelle elle ne gère (souvent) que la date, et non pas le temps, à l'inverse de la première.

exemple :

ResultSet rs=null;
// exécuter la requête
			while (rs.next()) {
				Date d = rs.getDate("colonneDeDate");
			}

Cette méthode (getDate), puisqu'elle retourne une date de la base de données, alors cette date sera bien de type java.sql.Date.

Je te propose de voir plus de détail sur la discussion : http://www.geekinterview.com/question_details/25307, ou bien sur ce lien : http://unleashing.wordpress.com/2008/06/30/diff-bet-utildate-and-sqldate/

On attend toujours ton code entier si ton problème n'est pas encore résolu.

Bon courage.

zineb2206_9777

Salut

Merci nasix et voila le code de toute la classe

chargerTableauvaleur() c'est la methode qui charge tout les champs de la table grace a la methode getListevaleur qui se trouve dans une autre classe et c'est valeurservices

public class Valeur extends javax.swing.JFrame {

    Vector vdata = null;

    private void chargerTableauvaleur() {
        vdata = valeurservices.getListevaleur();
        Vector vcolonnename = (Vector) vdata.elementAt(0);
        vdata.removeElementAt(0);
        tablegroupe.setModel(new DefaultTableModel(vdata, vcolonnename));

    }

chargerTableau() c'est la methode qui charge les information demander via la methode getlistevaleur qui se trouve dans cette classe parcque j'ai besoin de deux boutton,un qui affiche toute la table et un autre pour afficher selon la date demander

private void chargerTableau() {
        Date d = new Date(jTextField1.getText());
        System.out.println(d);
        vdata = getListevaleur(d);
        Vector vcolonnename = (Vector) vdata.elementAt(0);
        vdata.removeElementAt(0);
        tablegroupe.setModel(new DefaultTableModel(vdata, vcolonnename));

    }
 public Valeur() {
        initComponents();
    }



boutton qui affiche toute la table

 // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        btnsupprimer = new javax.swing.JButton();
        jPanel2 = new javax.swing.JPanel();
        jScrollPane1 = new javax.swing.JScrollPane();
        tablegroupe = new javax.swing.JTable();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jTextField1 = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowOpened(java.awt.event.WindowEvent evt) {
                chargement(evt);
            }
        });

        btnsupprimer.setText("Afficher toutes les informations");
        btnsupprimer.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                btnsupprimerbtaffichage(evt);
            }
        });

        jScrollPane1.setViewportView(tablegroupe);

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jScrollPane1)
                .addGap(24, 24, 24))
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 87, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(66, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGap(145, 145, 145)
                        .addComponent(btnsupprimer, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(btnsupprimer)
                .addGap(36, 36, 36)
                .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(45, 45, 45))
        );

        jButton1.setText("Accueil");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                retour(evt);
            }
        });

        jButton2.setText("Fermer");
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                Fermer(evt);
            }
        });

        jButton3.setText("test");
        jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton3MouseClicked(evt);
            }
        });

        jTextField1.setText("jTextField1");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 491, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(19, Short.MAX_VALUE))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGap(34, 34, 34)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                        .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 308, Short.MAX_VALUE)
                        .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jButton1)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 303, Short.MAX_VALUE)
                        .addComponent(jButton2)))
                .addGap(51, 51, 51))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(14, 14, 14)
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 195, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(31, 31, 31)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton1)
                    .addComponent(jButton2))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 44, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton3)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        pack();
    }// </editor-fold>                        
    private void btnsupprimerbtaffichage(java.awt.event.MouseEvent evt) {                                         
        // TODO add your handling code here:

        chargerTableauvaleur();

       
       
    }       

un bouton de retour a la page precedente

 private void retour(java.awt.event.MouseEvent evt) {                        
        // TODO add your handling code here:
        JFrame j = new accueil();
        j.setVisible(true);
    }     

boutton qui ferme la fenetre

  private void Fermer(java.awt.event.MouseEvent evt) {                        
        // TODO add your handling code here:
        this.setVisible(true);
        System.exit(0);
    }  

la methode getlistevaleur pour l'ffichage par date
   public static Vector getListevaleur(Date d) {


        Vector vdata = new Vector();
        ResultSet rs = null;
        try {
            Connection conn = BDConnection.connecter();

            Statement stmt = null;
            try {
                stmt = (Statement) conn.createStatement();
                rs = stmt.executeQuery("select *  from Valeur where date='" + d + "' ");
                ResultSetMetaData rsmd = rs.getMetaData();
                int colonneccount = rsmd.getColumnCount();
                Vector vcolonnename = new Vector();
                for (int i = 1; i <= colonneccount; i++) {
                    vcolonnename.addElement(rsmd.getColumnName(i));
                }
                vdata.addElement(vcolonnename);
                Vector vligne;
                while (rs.next()) {
                    //System.out.println(rs.getString("d"));

                    vligne = new Vector();
                    for (int i = 1; i <= colonneccount; i++) {
                        vligne.addElement(rs.getObject(i));
                    }
                    vdata.addElement(vligne);
                }
            } finally {
                rs.close();
                stmt.close();
                BDConnection.deconnecter();
            }
        } catch (Exception e) {
        }
        return vdata;
    }


et en fin le fameux boutton d'affichage par date
  private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {                                      
        // TODO add your handling code here:

        // Date d = new Date(jTextField1.getText());
        // getListevaleur(d);
        chargerTableau();
    // chargerid();
    }                                     

 public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new Valeur().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton btnsupprimer;
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTable tablegroupe;
    // End of variables declaration
}

merci pour l'aide
zineb2206_9777

hihi desolee pour le 3eme code je ne sais pas d'ou j'ai sortie ca

zineb2206_9777

et voila la methode getliste valeur qui se trouve dans la classe servicesvaleur

 public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new Valeur().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton btnsupprimer;
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTable tablegroupe;
    // End of variables declaration
}