Maison > Java > javaDidacticiel > Comment puis-je sérialiser et désérialiser des objets Java en tableaux d'octets ?

Comment puis-je sérialiser et désérialiser des objets Java en tableaux d'octets ?

DDD
Libérer: 2024-12-15 13:14:26
original
667 Les gens l'ont consulté

How Can I Serialize and Deserialize Java Objects to Byte Arrays?

Sérialisation et désérialisation d'objets Java en tableaux d'octets

Dans les scénarios typiques impliquant la transmission de données sur des réseaux, il est souvent nécessaire de convertir des objets dans des tableaux d'octets pour un transfert efficace. Comprendre comment sérialiser et désérialiser les objets Java permet aux développeurs de gérer efficacement cet échange de données, garantissant l'intégrité et la fonctionnalité des objets transmis.

Sérialisation

Pour sérialiser un objet, il y a des preuves et des tests méthodes :

static byte[] serialize(final Object obj) {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();

    try (ObjectOutputStream out = new ObjectOutputStream(bos)) {
        out.writeObject(obj);
        out.flush();
        return bos.toByteArray();
    } catch (Exception ex) {
        throw new RuntimeException(ex);
    }
}
Copier après la connexion

Désérialisation

Une fois l'objet sérialisé et transmis, l'extrémité réceptrice peut le reconstruire en utilisant l'approche suivante :

static Object deserialize(byte[] bytes) {
    ByteArrayInputStream bis = new ByteArrayInputStream(bytes);

    try (ObjectInput in = new ObjectInputStream(bis)) {
        return in.readObject();
    } catch (Exception ex) {
        throw new RuntimeException(ex);
    }
}
Copier après la connexion

En implémentant ces méthodes, les développeurs peuvent convertir de manière transparente leurs objets Java en tableaux d'octets, les transmettre sur les réseaux, puis les désérialiser sur le récepteur. fin, préservant l'état de l'objet et permettant un traitement ultérieur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal