Cela signifie que la classe peut être sérialisée. Cela signifie qu'il peut être converti en un flux de 0 et 1 et être envoyé à un autre service, comme un service web ou et ORM (hibernation) ou autre. Alors ce service sait comment stocker le flux.
En outre, votre programme peut recevoir une classe sérialisée et créer une instance à partir du flux de 0 et de 1. C'est le moyen de "sauvegarder" des instances de classes et de les "restaurer" à tout autre moment.
Plus d'infos sur
Pour pouvoir faire une classe sérialisable, vous devez implémenter l'interface "Serializable".
Pourquoi donc? Parce que lorsque le moment de sérialiser une classe arrivera, la fonction writeObtject
sera appelée pour convertir l'objet en octets. D'autre part, quand vous avez les octets et que vous voulez obtenir l'instance de la classe, la fonction readObject
sera appelée.
Pourquoi n'est pas automatique? Une valeur variable est déjà représentée par des octets. Parce que le problème vient par exemple lorsqu'une classe contient des instances d'autres classes. Que faire? Vous sérialisez les autres classes aussi? Vous gardez juste l'adresse de référence? C'est assez complexe et cela peut dépendre de votre type de projet et de design.
C'est soit dupe de (http [Do cours de table Hibernate doivent être Serializable?]: // stackoverflow.com/questions/2726300/do-hibernate-table-classes-besoin-d'être-sérialisable) ou, si ce n'est pas une question spécifique à Hibernate/JPA, une dupe de [Qu'est-ce que la sérialisation d'objet?] (http: // stackoverflow. com/questions/447898/quoi-est-objet-sérialisation). Dans les deux cas, c'est une dupe :) –
J'ai édité les tags. Suppression de "jpa" et "hibernation" et ajout de "sérialisation". – pakore
@pascal: désolé je suis un débutant. J'apprends maintenant. Je vais éviter cela à l'avenir certainement. –