J'ai une variable en Java quel type de retour est objet (java.lang.Object). Je souhaite stocker cette valeur de variable dans la base de données MySQL sans créer d'autre type de données primitive. Y a-t-il un type de données disponible dans MySQL lié à l'objet? p>
4 Réponses :
blob pourrait le faire. Serialize l'objet dans un tableau d'octets et insérez-le comme une blob. P>
Vous pouvez utiliser un comme une note latérale: vous ne devriez probablement pas stocker un objet brut dans la base de données, ce genre de vous empêche de faire une sorte de requête sur elle. P> blob code> pour stocker les données brutes, mais sinon non, MySQL n'a pas de type de données spécifiquement pour un objet Java. P>
Vous devez faire sérialiser l'objet de toute façon, afin que vous puissiez sérialiser à XML ou JSON ASWELL. Un formulaire de stockage lisible humain est ce que je préférerais. Jetez un coup d'œil à XStream par exemple. Un excellent outil de threadsafe pour le marshalling / unmarshalling. p>
Je suppose bien sûr que votre objet est un haricot / pojo. p>
Je ne suis pas sûr que voulez-vous dire par ou P> objet (java.lang.object) code>. Mais je pense que si vous essayez JSON DataType dans MySQL, cela fonctionnera bien. INSERT INTO person VALUES (JSON_OBJECT("pid",103,"name", "name3"));
Notez que ce n'est généralement pas une bonne idée de stocker un objet sérialisé dans une base de données (autre que peut-être temporairement) car une modification de la classe de l'objet pourrait rendre l'objet sérialisé stocké dans la base de données incompatible avec elle.
C'est sûr que cela ferait des choses faciles. Regarde dans orm ou owbms. en.wikipedia.org/wiki/Object-Relational_mapping et EN.Wikipedia.org/wiki/Object_database