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

API standards et tierces Java Discussion :

Comment faire de la Programmation Dynamique


Sujet :

API standards et tierces Java

  1. #1
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 335
    Points : 332
    Points
    332
    Par défaut Comment faire de la Programmation Dynamique
    Salut tous le monde,
    Je me demande s'il ya un moyen de creer une classe dynamiquement,
    je veux dire par cree une implementation lors de l'execution et de l'utiliser.
    certain vont me dire de creer un output stream pour ecrire la source de cette classe puis appeler le javac pour la compiler dans un repertoire utiliser comme class path par l'actuel jvm puis utiliser cette class utilisant le class loader.
    Certes c'est une solution, mais j'aimerais savoir s'il ya une autre ou il ya pas d'output disk. c'est a dire la class existe dans la memoire.

  2. #2
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 573
    Points : 15 535
    Points
    15 535
    Par défaut
    Depuis java 1.6 il y a le package javax.tools qui semble tout a fait répondre a ton besoin.
    Notamment sa classe ToolProvider

  3. #3
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 335
    Points : 332
    Points
    332
    Par défaut
    D'apres ce que je view de lire c'est la meme chose juste c'est une class java au lieu d'une commande externe , et on a plus de control sur les message de sortie.
    Ce que je cherche c'est quelque chose qui se fais en memoire, creation d'une class qui existe uniquement dans la jvm qui s'execute actuellement.
    pour explique mieux le pbm :
    je suis entrain de modeliser un framework qui va enrechir du code ecrit par un simple developpeur (le developpeur s'occupe du uniquement cote business du code, tous la communication entre les layers des application est fais dynamiquement)
    j'ai concu utiliser les proxy pour enrechir les methode ecrite(logging....etc)(c'est commme ce qui fais dans un ebj container avec les rmi call)
    mais parfois j'ai besoin d'ajouter cetaines proprite qui n'existais pas c'est pour ca que j'ai besoin de creation de class dynamique.

  4. #4
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 573
    Points : 15 535
    Points
    15 535
    Par défaut
    Malheureusement le bytecode java n'est pas vraiment prévu pour ça.

    Le invokeDynamic est prévu pour y remédier mais il n'est pas prévu avant le JDK7 : http://blog.developpez.com/adiguba/p...t-coin/#jsr292

  5. #5
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 335
    Points : 332
    Points
    332
    Par défaut
    Ok uther,
    merci bcp pour ton aide.
    je vais lire un peux plus sur la JSR 292

  6. #6
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    T'as regardé du côté de CGLIB, ASM, frameworks utilisés par Hibernate, Spring...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 13/11/2007, 19h46
  2. Comment faire tourner un programme en background?
    Par cyranno dans le forum Linux
    Réponses: 13
    Dernier message: 09/11/2007, 12h32
  3. Comment faire un ORDER BY dynamique avec une direction?
    Par Danny Blue dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/03/2007, 01h46
  4. Comment faire une Form MDI dynamiquement modale ?
    Par eponette dans le forum Composants VCL
    Réponses: 5
    Dernier message: 30/09/2005, 10h14
  5. Comment faire patienter un programme ?
    Par JlouisI dans le forum Débuter
    Réponses: 4
    Dernier message: 03/03/2003, 11h11

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