Convertir date provenant de mysql

Résolu
titi0006 Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je développe une application en Java J2E modèle MVC et je récupère des dates dans ma base de données. Sauf que celles-ci sont au format année - mois - jours et je souhaiterai les mettre au format jours - mois - année. Comment faire?
Voici ma classe CongeDAO pour plus d'aide:
package fr.intranet.bdd;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import fr.intranet.models.Conges;
import fr.intranet.models.Users;


public class CongesDAO {
Statement statement = null;
ResultSet resultat = null;
AccesBDD unAcces = new AccesBDD();
public List<Conges> getCongesStatutAccueil(){
List<Conges> lesConges = new ArrayList<Conges>();
try{
statement = unAcces.connexionBdd().createStatement();
resultat = statement
.executeQuery("SELECT Conges.id As idConges, Users.id As idUser, Users.nom As nom, prenom, fonction, typeConges, depot, dateDbt, dateFin, statut, dateAction, commentaires"
+ " FROM Conges"
+ " LEFT JOIN Users ON Users.id = Conges.users_id"
+ " WHERE statut = 'En attente' OR statut = 'Annulé'"
+ " ORDER BY depot desc");

while(resultat.next()){
Conges conge = new Conges();
Users user = new Users();
user.setId(resultat.getInt("idUser"));
user.setNom(resultat.getString("nom"));
user.setPrenom(resultat.getString("prenom"));
user.setFonction(resultat.getString("fonction"));
conge.setUsers(user);
conge.setId(resultat.getInt("idConges"));
conge.setTypeConges(resultat.getString("typeConges"));
conge.setDepot(resultat.getDate("depot"));
conge.setDateDbt(resultat.getDate("dateDbt"));
conge.setDateFin(resultat.getDate("dateFin"));
conge.setStatut(resultat.getString("statut"));
conge.setCommentaires(resultat.getString("commentaires"));

lesConges.add(conge);
}
}catch (SQLException e) {
e.getMessage();
} finally {
unAcces.deconnexionBdd(resultat, statement);
}

return lesConges;
}

public List<Conges> getCongesUserAccueil(int idUser){
List<Conges> lesConges = new ArrayList<Conges>();
try{
statement = unAcces.connexionBdd().createStatement();
resultat = statement
.executeQuery("SELECT Conges.id As idConges, Users.id As idUser, Users.nom As nom, prenom, fonction, typeConges, depot, dateDbt, dateFin, statut, dateAction"
+ " FROM Conges"
+ " LEFT JOIN Users ON Users.id = Conges.users_id"
+ " WHERE Users.id ="+idUser
+ " ORDER BY depot desc");

while(resultat.next()){
Conges conge = new Conges();
Users user = new Users();
user.setId(resultat.getInt("idUser"));
user.setNom(resultat.getString("nom"));
user.setPrenom(resultat.getString("prenom"));
user.setFonction(resultat.getString("fonction"));
conge.setUsers(user);
conge.setId(resultat.getInt("idConges"));
conge.setTypeConges(resultat.getString("typeConges"));
conge.setDepot(resultat.getDate("depot"));
conge.setDateDbt(resultat.getDate("dateDbt"));
conge.setDateFin(resultat.getDate("dateFin"));
conge.setStatut(resultat.getString("statut"));

lesConges.add(conge);
}
}catch (SQLException e) {
e.getMessage();
} finally {
unAcces.deconnexionBdd(resultat, statement);
}

return lesConges;
}
}

Merci de votre aide
A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Les dates en SQL correspondent à des objets dates en Java (java.sql.Date ou java.sql.Timestamp qui héritent tout deux de java.util.Date).

Il n'y a donc pas de format jour/mois/année ou année/mois/jour, ce qui est stocké c'est le nombre de millisecondes depuis le 1er janvier 1970.

Après ce n'est que de l'affichage et il faut passer par différentes classes pour manipuler les dates. Il y a la classe Calendar, SimpleDateFormat et quelques autres.
0