java.lang.Objectjava.beans.Encoder
java.beans.XMLEncoder
public class XMLEncoder
The XMLEncoder class is a complementary alternative to
the ObjectOutputStream and can used to generate
a textual representation of a JavaBean in the same
way that the ObjectOutputStream can
be used to create binary representation of Serializable
objects. For example, the following fragment can be used to create
a textual representation the supplied JavaBean
and all its properties:
e.close();
XMLEncoder
class is exclusively designed for the purpose of archiving graphs
of JavaBeans as textual representations of their public
properties. Like Java source files, documents written this way
have a natural immunity to changes in the implementations of the classes
involved. The ObjectOutputStream continues to be recommended
for interprocess communication and general purpose serialization.
The XMLEncoder class provides a default denotation for
JavaBeans in which they are represented as XML documents
complying with version 1.0 of the XML specification and the
UTF-8 character encoding of the Unicode/ISO 10646 character set.
The XML documents produced by the XMLEncoder class are:
XMLEncoder class
uses a redundancy elimination algorithm internally so that the
default values of a Bean's properties are not written to the stream.
Below is an example of an XML archive containing some user interface components from the swing toolkit:
<?xml version="1.0" encoding="UTF-8"?> <java version="1.0" class="java.beans.XMLDecoder"> <object class="javax.swing.JFrame"> <void property="name"> <string>frame1</string> </void> <void property="bounds"> <object class="java.awt.Rectangle"> <int>0</int> <int>0</int> <int>200</int> <int>200</int> </object> </void> <void property="contentPane"> <void method="add"> <object class="javax.swing.JButton"> <void property="label"> <string>Hello</string> </void> </object> </void> </void> <void property="visible"> <boolean>true</boolean> </void> </object> </java>
Although all object graphs may be written using just these three tags, the following definitions are included so that common data structures can be expressed more concisely:
Integer class could be written:
<int>123</int>. Note that the XMLEncoder class
uses Java's reflection package in which the conversion between
Java's primitive types and their associated "wrapper classes"
is handled internally. The API for the XMLEncoder class
itself deals only with Objects.
For more information you might also want to check out Using XMLEncoder, an article in The Swing Connection.
XMLDecoder,
ObjectOutputStream| Constructor Summary | |
|---|---|
XMLEncoder(OutputStream out)
Creates a new output stream for sending JavaBeans to the stream out using an XML encoding. |
|
| Method Summary | |
|---|---|
void |
close()
This method calls flush, writes the closing
postamble and then closes the output stream associated
with this stream. |
void |
flush()
This method writes out the preamble associated with the XML encoding if it has not been written already and then writes out all of the values that been written to the stream since the last time flush
was called. |
Object |
getOwner()
Gets the owner of this encoder. |
void |
setOwner(Object owner)
Sets the owner of this encoder to owner. |
void |
writeExpression(Expression oldExp)
Records the Expression so that the Encoder will produce the actual output when the stream is flushed. |
void |
writeObject(Object o)
Write an XML representation of the specified object to the output. |
void |
writeStatement(Statement oldStm)
Records the Statement so that the Encoder will produce the actual output when the stream is flushed. |
| Methods inherited from class java.beans.Encoder |
|---|
get, getExceptionListener, getPersistenceDelegate, remove, setExceptionListener, setPersistenceDelegate |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public XMLEncoder(OutputStream out)
out using an XML encoding.
out - The stream to which the XML representation of
the objects will be sent.XMLDecoder.XMLDecoder(InputStream)| Method Detail |
|---|
public void setOwner(Object owner)
owner.
owner - The owner of this encoder.getOwner()public Object getOwner()
setOwner(java.lang.Object)public void writeObject(Object o)
writeObject in class Encodero - The object to be written to the stream.XMLDecoder.readObject()public void writeStatement(Statement oldStm)
This method should only be invoked within the context of initializing a persistence delegate.
writeStatement in class EncoderoldStm - The statement that will be written
to the stream.PersistenceDelegate.initialize(java.lang.Class>, java.lang.Object, java.lang.Object, java.beans.Encoder)public void writeExpression(Expression oldExp)
This method should only be invoked within the context of initializing a persistence delegate or setting up an encoder to read from a resource bundle.
For more information about using resource bundles with the XMLEncoder, see http://java.sun.com/products/jfc/tsc/articles/persistence4/#i18n
writeExpression in class EncoderoldExp - The expression that will be written
to the stream.PersistenceDelegate.initialize(java.lang.Class>, java.lang.Object, java.lang.Object, java.beans.Encoder)public void flush()
flush
was called. After flushing, all internal references to the
values that were written to this stream are cleared.
public void close()
flush, writes the closing
postamble and then closes the output stream associated
with this stream.
Ces informations proviennent du site de http://java.sun.com
Le contenu de cette page provient du site de Sun, et est généré depuis un cache sur l'infobrol après certains traitements automatisés. La présentation peut donc différer du document original, mais le contenu aussi. Vous pouvez utiliser ce bouton pour afficher la page originale du site de Sun :
Maintenir les pages en cache sur différents sites peut offrir plus de disponibilité.
Chaque page est indexée dans la base de donnée, ce qui permet de retrouver facilement les informations, au moyen des sommaires, du moteur de recherche interne, etc.
Des facilités sont mises en place pour que les membres de l'infobrol puissent effectuer des traductions en français des différents documents. Ceci devrait permettre aux débutants en programmation Java de consulter les API en français s'ils maîtrisent moins bien la langue de Shakespeare. Dans le cas où une traduction a été soumise, elle est disponible au moyen d'un lien en bas de page. Si la traduction a été validée, la page s'affiche par défaut en français, et un lien en bas de page permet d'atteindre la version en anglais.
Le code sur l'infobrol est automatiquement coloré selon la syntaxe, et les différents mots clés sont transformés en liens pour accéder rapidement aux informations.
Vous avez la possibilité de partager vos expériences en proposant vos propres extraits de code en utilisant le bouton "ajouter un commentaire" en bas de page. Si vous visitez simplement l'infobrol, vous avez déjà accès à cette fonction, mais si vous étes membre du brol, vous pouvez en plus utiliser des boutons supplémentaires de mise en forme, dont la coloration automatique de vos extraits de codes.
Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.
6 mots clés dont 0 définis manuellement (plus d'information...).
Avertissement
Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.
Recherche (afficher)
Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
Citation (masquer)