IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

changer la date de la jvm


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 67
    Par défaut changer la date de la jvm
    bonjour,

    dans le cadre de test junit , j'ai besoin de changer la date de la jvm.
    L'objectif est que, quand j'utilise System.currentTimeMillis(), ou bien Calendar.getInstance() cela me retourne un temps 1 an en arrière.
    Il faut peut être changer des system properties, mais lesquelles ?

    Une idée ?

    Merci

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    Peut-être qu'avec une commande système... sous windows, un "date" http://ss64.com/nt/date.html

    Mais en pur java, ça m'étonnerait que cela soit interfacé

  3. #3
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 67
    Par défaut
    je peux pas changer la date de l'OS,

    pour info , il y a une solution avec un AOP qui surcharge :
    -System.currentTimeMillis()
    -Calendar.getInstance()
    -new Date()

    c'est pas parfait, mais ca dépanne:

    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
     
    import java.util.Date;
    import java.util.Calendar;
     
    public aspect AspectCurrentDate {
     
    	long around(): call(long System.currentTimeMillis()) {
    		long currentDate = proceed();
    		//your code 
    		return currentDate;
    	}
     
    	Calendar around(): call(Calendar Calendar.getInstance()) {
    		Calendar currentDateCal = proceed();
    		//your code
    		return currentDateCal;
    	}
     
    	Date around(): call(Date.new()) {
    		Date d = proceed();
    		//your code
    		return d;
    	}
    }

  4. #4
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    ouasi ok... je connaissais pas du tout ça... pour moi l'aop, ça se limitait à définir des pointcut/advisory et de les associer à ses beans spring

    sympa

Discussions similaires

  1. Comment changer la date système sans changer l'heure?
    Par pointer dans le forum Langage
    Réponses: 7
    Dernier message: 18/05/2010, 09h55
  2. Changer la date de modification d'un fichier
    Par sylviev dans le forum Langage
    Réponses: 1
    Dernier message: 07/08/2007, 09h58
  3. [CF][VB.Net] Comment changer la date système du PDA ?
    Par zitoun dans le forum Windows Mobile
    Réponses: 1
    Dernier message: 07/03/2006, 16h26
  4. changer la date système
    Par dev-man dans le forum Windows XP
    Réponses: 2
    Dernier message: 05/01/2006, 14h09
  5. changer la date windows
    Par Homer dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 04/01/2006, 21h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo