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

Développement Web en Java Discussion :

Transformer un objet Java en JSON


Sujet :

Développement Web en Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Juillet 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 14
    Points : 18
    Points
    18
    Par défaut Transformer un objet Java en JSON
    Bonjour,

    Je suis débutant dans le monde JSON , j'ai trouvé un api qui permet de transformer des objets java en json facilement Jackson ( c'est ce qui est dit dans la doc).

    Voila ce que j'ai fait et qui marche pas:
    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
    package com.monapplication;
     
    import java.util.ArrayList;
    import java.util.List;
     
    public class DataObject {
     
    	private int data1 = 100;
    	private String data2 = "hello";
    	private List list = new ArrayList() {
    		private static final long serialVersionUID = 1L;
    	{
    		add("String 1");
    		add("String 2");
    		add("String 3");
    	  }
    	};
     
    		}
     
    }
    Que j'appelle dans ma classe principale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DataObject dataObject = new DataObject();
    JSONObject json = JSONObject.fromObject(dataObject ); 
    System.out.println(json.toString());
    Et à l'affichage c'est vide ! Voila mon soucis, merci d'avance.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Je dis peut être une bétise, mais ton objet java n'est il pas censé être lié à un xsd, pour permettre la sérialisation de ton objet ?

  3. #3
    Membre chevronné
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Points : 2 112
    Points
    2 112
    Par défaut
    Bonjour,

    une petite question, ta classe DataObject dispose bien de getters / setters publics ?

    Par ce que si ce n'est pas le cas Jackson, n'ira rien sérialiser en JSON ... puisque tout est private dans ton exemple.

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 22
    Points : 38
    Points
    38
    Par défaut
    Généralement, afin de serialiser/deserialiser du java depuis/vers Json

    -Méthodes publiques
    -Fonctionne par introspection donc "attribut" dois avoir ses accesseur correctement nommé getAttribut/setAttribut.
    Si tu as un attribut "montant" et que son eccesseur est "getValeur" le serializer ne saura pas que c'est lié.

    -Egalement, mais dépends des frameworkn lorsque tu déserializes il faut avoir le constructeur par défaut (no-arg constructor) explicitement défini.

    -Le meilleur moyen de ne pas se tromper a ce niveau la est d'avoir un bean, n'écrire que le nom des attribut, et de générer les getter et setters automatiquement

Discussions similaires

  1. [Débutant] Transformation JSON a objet JAVA avec Jackson.
    Par geforce dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 17/02/2015, 01h01
  2. [MuleStudio] Lire un fichier et le transformer en objet Java
    Par achorim dans le forum Général Java
    Réponses: 2
    Dernier message: 13/06/2013, 12h31
  3. transformer objet java en collection oracle
    Par reportPer dans le forum Général Java
    Réponses: 4
    Dernier message: 04/10/2009, 07h32
  4. Transformer un objet Java en objet javascript
    Par Tanebisse dans le forum Développement Web en Java
    Réponses: 8
    Dernier message: 15/04/2008, 10h26

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