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]
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.
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.
Salut,
Pourras-tu rajouter un affichage de la date dans la méthode chargerTableau comme suis :
Puis fais un petit code qui affiche les valeurs que tu as dans la colonne date de ta table Valeur comme suit :
Fais ça et dis ce que ça t'affiche, pour le premier code et pour le deuxième.
Bonjour
voila le format de la date sur la table
2012-12-12 00:00:00.0
Salut,
Et l'affichage de d : System.out.println(d) dans ta fonction, ça affiche quoi ?
je ne suis pas arrivé a l'afficher
Si tu pourras nous poster toute ta classe, on pourra mieux t'aider.
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]
excusez le désordre
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.
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
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
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 :
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.
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
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
boutton qui affiche toute la table
un bouton de retour a la page precedente
boutton qui ferme la fenetre
la methode getlistevaleur pour l'ffichage par date
et en fin le fameux boutton d'affichage par date
merci pour l'aide
hihi desolee pour le 3eme code je ne sais pas d'ou j'ai sortie ca
et voila la methode getliste valeur qui se trouve dans la classe servicesvaleur