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

Java Discussion :

Serializer un objet de deux manières différentes.


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2003
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 87
    Par défaut Serializer un objet de deux manières différentes.
    Bonjour,

    Je souhaite sérializer un objet de deux manières différentes. Pour être plus précis je travaille sur une application JavaEE avec EJB3 qui utilise donc la serialization pour la persistance. J'aimerai, en plus de cette sérialization, utiliser mon propre protocole de serialization pour transmettre mes entités a une autre application.
    Cependant les seules méthodes que j'ai trouvé pour modifier la manière dont est serializé un objet est d'ajouter ce traitement dans les méthodes writeObject et readObject. Ce traitement est alors effectué pour chaque sérialization de l'objet.

    Est-il possible de définir un autre moyen de serializer un objet sans modifier le comportement de base? La seule solution est-elle d'utiliser la reflexion?

    Merci

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Sans modifier le comportement de base signifie-t-il pour toi ne pas modifier le code ? Sans rien ajouter ?
    Alors oui, la réflexivité me semble la seule solution possible.
    Mais ceci a un grand avantage : tu peux créer un objet générique qui sauve ou restaure n'importe quel objet, sans connaitre les types de ses données membres "en dur".
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2003
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 87
    Par défaut
    Citation Envoyé par dinobogan Voir le message
    Sans modifier le comportement de base signifie-t-il pour toi ne pas modifier le code ? Sans rien ajouter ?
    Alors oui, la réflexivité me semble la seule solution possible.
    Mais ceci a un grand avantage : tu peux créer un objet générique qui sauve ou restaure n'importe quel objet, sans connaitre les types de ses données membres "en dur".
    Idéalement je souhaiterai pouvoir définir ce qui doit être sérialisé au moyen d'annotations. J'ai déjà réalisé une première version utilisant la réflexion et les annotations me ce processus me parait lourd au niveau de la syntaxe et des performances. Du coup je me demande si il y a une manière plus "propre" d'effectuer ce genre de sérialisation.

    Pourrais-tu détailler cela ?
    En quoi la sérialisation doit-elle être différente ???
    Pour l'instant mes données doivent être sérialisé en JSON mais à terme un autre format de donnée sera peut-être utilisé.

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par piemur2000 Voir le message
    Pour l'instant mes données doivent être sérialisé en JSON mais à terme un autre format de donnée sera peut-être utilisé.
    Donc ce n'est pas de la sérialisation à proprement parler, enfin pas au sens Java du terme.

    Si tu veux générer du JSON tu n'as pas à toucher à l'API de Serialisation.
    La Serialisation Java est plus adapté à une sauvegarde rapide, mais pas trop à un partage d'info entre deux applications.

    Soit tu codes cela toi même, soit tu utilises une API existante...

    Plus d'info ici : http://www.json.org/json-fr.html


    a++

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2003
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 87
    Par défaut
    D'accord, merci. Donc si j'ai bien compris, si je veux "sérialiser" (au sens large) un objet a ma manière, je dois tout implémenter à la main en utilisant la réflexion.

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par piemur2000 Voir le message
    J'aimerai, en plus de cette sérialization, utiliser mon propre protocole de serialization pour transmettre mes entités a une autre application.
    Pourrais-tu détailler cela ?
    En quoi la sérialisation doit-elle être différente ???

    a++

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

Discussions similaires

  1. [JAXB] Marshal un objet apparetenant à deux listes différentes
    Par spimelabs dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 15/07/2013, 06h06
  2. Réponses: 0
    Dernier message: 14/04/2010, 16h26
  3. Réponses: 2
    Dernier message: 29/05/2009, 14h52
  4. Réponses: 1
    Dernier message: 23/10/2008, 17h58
  5. Afficher un meme objet sur deux Jpanel différents
    Par Kehel dans le forum Débuter
    Réponses: 3
    Dernier message: 04/09/2008, 14h21

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