public abstract class AbstractMarshallerImpl extends Object implements Marshaller
 这个类提供了部分默认实现Marshaller接口。 
 一个JAXB提供者必须实现的唯一方法是marshal(Object, javax.xml.transform.Result) , marshal(Object, javax.xml.stream.XMLStreamWriter)和marshal(Object, javax.xml.stream.XMLEventWriter) 。 
Marshaller 
       Marshaller.ListenerJAXB_ENCODING, JAXB_FORMATTED_OUTPUT, JAXB_FRAGMENT, JAXB_NO_NAMESPACE_SCHEMA_LOCATION, JAXB_SCHEMA_LOCATION| Constructor and Description | 
|---|
| AbstractMarshallerImpl() | 
| Modifier and Type | Method and Description | 
|---|---|
| <A extends XmlAdapter> | getAdapter(类<A> type)
              获取与指定类型相关联的适配器。 
             | 
| AttachmentMarshaller | getAttachmentMarshaller() | 
| protected String | getEncoding()
              获取当前输出编码的便利方法。 
             | 
| ValidationEventHandler | getEventHandler()
              返回当前事件处理程序或默认事件处理程序(如果尚未设置)。 
             | 
| protected String | getJavaEncoding(String encoding)
              从IANA名称获取相应的Java编码名称。 
             | 
| Marshaller.Listener | getListener() | 
| Node | getNode(Object obj) 
             默认情况下,getNode方法不受支持,并抛出一个 UnsupportedOperationException。 | 
| protected String | getNoNSSchemaLocation()
              获取当前noNamespaceSchemaLocation的便利方法。 
             | 
| Object | getProperty(String name)
              getProperty方法的默认实现处理Marshaller中四个定义的属性。 
             | 
| Schema | getSchema() 
             获取用于执行组织时间验证的JAXP 1.3  Schema对象。 | 
| protected String | getSchemaLocation()
              获取当前schemaLocation的便利方法。 
             | 
| protected boolean | isFormattedOutput()
              获取格式化输出标志的方便方法。 
             | 
| protected boolean | isFragment()
              获取片段标志的便利方法。 
             | 
| void | marshal(Object obj, ContentHandler handler)
              将根据 
             jaxbElement的内容树 
             组织成SAX2事件。 
             | 
| void | marshal(Object jaxbElement, File output)
              将根据 
             jaxbElement的内容树 
             组织成一个文件。 
             | 
| void | marshal(Object obj, Node node)
              将根源于 
             jaxbElement的内容树 
             组织到一个DOM树中。 
             | 
| void | marshal(Object obj, OutputStream os)
              将根据 
             jaxbElement的内容树 
             组织成输出流。 
             | 
| void | marshal(Object obj, Writer w)
              将根植于 
             jaxbElement的内容树 
             组织成一个作家。 
             | 
| void | marshal(Object obj, XMLEventWriter writer) 
             将根据jaxbElement的内容树组织成一个 XMLEventWriter。 | 
| void | marshal(Object obj, XMLStreamWriter writer) 
             将根植于jaxbElement的内容树组织成一个 XMLStreamWriter。 | 
| <A extends XmlAdapter> | setAdapter(类<A> type, A adapter) 
             相关联的配置实例 XmlAdapter这个编组。 | 
| void | setAdapter(XmlAdapter adapter) 
             相关联的配置实例 XmlAdapter这个编组。 | 
| void | setAttachmentMarshaller(AttachmentMarshaller am)
              关联使XML文档中的二进制数据能够以XML二进制优化的附件传输的上下文。 
             | 
| protected void | setEncoding(String encoding)
              设置输出编码的方便方法。 
             | 
| void | setEventHandler(ValidationEventHandler handler)
              允许应用程序注册验证事件处理程序。 
             | 
| protected void | setFormattedOutput(boolean v)
              设置格式化输出标志的便利方法。 
             | 
| protected void | setFragment(boolean v)
              设置片段标志的便利方法。 
             | 
| void | setListener(Marshaller.Listener listener) 
             注册元帅事件回调 Marshaller.Listener与此Marshaller。 | 
| protected void | setNoNSSchemaLocation(String location)
              设置noNamespaceSchemaLocation的便利方法。 
             | 
| void | setProperty(String name, Object value)
              setProperty方法的默认实现处理Marshaller中四个定义的属性。 
             | 
| void | setSchema(Schema schema) | 
| protected void | setSchemaLocation(String location)
              设置schemaLocation的便利方法。 
             | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitmarshalpublic final void marshal(Object obj, OutputStream os) throws JAXBException
Marshaller复制 
          marshal在接口 
            Marshaller 
           obj - 要编组的内容树的根。 
           os - XML将被添加到此流。 
           JAXBException - 如果在编组过程中发生意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组合obj (或任何可从obj可访问的对象)。 
            见Marshalling a JAXB element 。 
           public void marshal(Object jaxbElement, File output) throws JAXBException
Marshaller复制 
          marshal在接口 
            Marshaller 
           jaxbElement - 要编组的内容树的根。 
           output - output文件。 
            如果这个文件已经存在,它将被覆盖。 
           JAXBException - 如果在编组过程中发生意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组织obj (或任何可从obj访问的对象)。 
            见Marshalling a JAXB element 。 
           public final void marshal(Object obj, Writer w) throws JAXBException
Marshaller复制 
          marshal在界面 
            Marshaller 
           obj - 要编组的内容树的根。 
           w - 将XML发送给作者。 
           JAXBException - 如果在编组过程中发生意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组织obj (或任何可从obj可访问的对象)。 
            见Marshalling a JAXB element 。 
           public final void marshal(Object obj, ContentHandler handler) throws JAXBException
Marshaller复制 
          marshal在界面 
            Marshaller 
           obj - 要编组的内容树的根。 
           handler - XML将作为SAX2事件发送到此处理程序。 
           JAXBException - 如果编组期间出现意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回虚假,或者Marshaller无法组织obj (或从obj可访问的任何对象)。 
            见Marshalling a JAXB element 。 
           public final void marshal(Object obj, Node node) throws JAXBException
Marshaller复制 
          marshal在界面 
            Marshaller 
           obj - 要编组的内容树。 
           node - 将作为此节点的子节点添加DOM节点。 
            此参数必须是一个可接受子(节点Document , DocumentFragment ,或Element ) 
           JAXBException - 如果在编组过程中出现意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组织jaxbElement (或任何可从jaxbElement可访问的对象)。 
            见Marshalling a JAXB element 。 
           public Node getNode(Object obj) throws JAXBException
UnsupportedOperationException 。 
           选择支持此方法的实现必须覆盖此方法。 
          getNode在界面 
            Marshaller 
           obj - - JAXB XML内容的Java表示 
           JAXBException - 如果发生意外问题 
           protected String getEncoding()
protected void setEncoding(String encoding)
encoding - Marshaller类文档中指定的有效编码 
           protected String getSchemaLocation()
protected void setSchemaLocation(String location)
location - schemaLocation值 
           protected String getNoNSSchemaLocation()
protected void setNoNSSchemaLocation(String location)
location - noNamespaceSchemaLocation值 
           protected boolean isFormattedOutput()
protected void setFormattedOutput(boolean v)
v - 格式化输出标志的值。 
           protected boolean isFragment()
protected void setFragment(boolean v)
v - 片段标志的值。 
           protected String getJavaEncoding(String encoding) throws UnsupportedEncodingException
UnsupportedEncodingException - 如果此实现无法找到Java编码名称。 
           public void setProperty(String name, Object value) throws PropertyException
setProperty在界面 
            Marshaller 
           name - 要设置的属性的名称。 
            可以使用常量字段或用户提供的字符串指定此值。 
           value - 要设置的属性的值 
           PropertyException - 处理给定属性或值时出错 
           public Object getProperty(String name) throws PropertyException
getProperty在界面 
            Marshaller 
           name - 要检索的属性的名称 
           PropertyException - 检索给定属性或值属性名称时出现错误 
           public ValidationEventHandler getEventHandler() throws JAXBException
Marshaller 
          getEventHandler在接口 
            Marshaller 
           JAXBException - 如果在获取当前事件处理程序时遇到错误 
           Marshaller.getEventHandler() 
           public void setEventHandler(ValidationEventHandler handler) throws JAXBException
Marshaller复制 
          如果在任何元帅API的调用期间遇到任何验证错误,JAXB提供者将调用验证事件处理程序。 如果客户端应用程序在调用其中一个元数据方法之前没有注册验证事件处理程序,则验证事件将由默认事件处理程序处理,该事件处理程序将在遇到第一个错误或致命错误后终止元组操作。
使用null参数调用此方法将导致Marshaller恢复为默认的默认事件处理程序。
setEventHandler在接口 
            Marshaller 
           handler - 验证事件处理程序 
           JAXBException - 如果在设置事件处理程序时遇到错误 
           Marshaller.setEventHandler(ValidationEventHandler) 
           public void marshal(Object obj, XMLEventWriter writer) throws JAXBException
Marshaller复制 
          XMLEventWriter 。 
          marshal在界面 
            Marshaller 
           obj - 根据要编组的jaxbElement的内容树。 
           writer - XML将被发送到这个作者。 
           JAXBException - 如果在编组过程中发生意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组合obj (或任何可从obj可访问的对象)。 
            见Marshalling a JAXB element 。 
           public void marshal(Object obj, XMLStreamWriter writer) throws JAXBException
Marshaller 
          XMLStreamWriter 。 
          marshal在界面 
            Marshaller 
           obj - 要编组的内容树。 
           writer - XML将被发送到这个作者。 
           JAXBException - 如果在编组过程中发生意外问题。 
           MarshalException - 如果ValidationEventHandler从其handleEvent方法返回false,或者Marshaller无法组织obj (或任何可从obj访问的对象)。 
            见Marshalling a JAXB element 。 
           public void setSchema(Schema schema)
Marshaller 
          setSchema在界面 
            Marshaller 
           schema - 用于验证 
            schema模式对象或null以禁用验证 
           public Schema getSchema()
Marshaller复制 
          Schema对象。 
           如果在编组器中没有设置Schema,则该方法将返回null,表示将不执行组织时间验证。 
          getSchema在界面 
            Marshaller 
           public void setAdapter(XmlAdapter adapter)
Marshaller复制 
          XmlAdapter这个编组。 
            这是调用setAdapter(adapter.getClass(),adapter);的方便方法。 
setAdapter在接口 
            Marshaller 
           Marshaller.setAdapter(Class,XmlAdapter) 
           public <A extends XmlAdapter> void setAdapter(类<A> type, A adapter)
Marshaller 
          XmlAdapter这个编组。 
            每编组内部维护一个Map < 类 , XmlAdapter >,它使用用于编组类,它们的字段/方法的注解为XmlJavaTypeAdapter 。 
 此方法允许应用程序使用的一个配置实例XmlAdapter 。 当没有给出适配器的实例时,编组者将通过调用其默认构造函数来创建一个。 
setAdapter在接口 
            Marshaller 
           type - 适配器的类型。 
            当XmlJavaTypeAdapter.value()引用此类型时,将使用指定的实例。 
           adapter - 要使用的适配器的实例。 
            如果为空,它将取消注册此类型的当前适配器集。 
           public <A extends XmlAdapter> A getAdapter(类<A> type)
Marshaller复制 
          Marshaller.setAdapter(javax.xml.bind.annotation.adapters.XmlAdapter)方法的反向操作。 
          getAdapter在接口 
            Marshaller 
           public void setAttachmentMarshaller(AttachmentMarshaller am)
Marshaller 
          关联使XML文档中的二进制数据能够以XML二进制优化的附件传输的上下文。 附件由XML文档内容模型通过存储在xml文档中的content-id URI(cid)引用引用。
setAttachmentMarshaller在界面 
            Marshaller 
           public AttachmentMarshaller getAttachmentMarshaller()
getAttachmentMarshaller在接口 
            Marshaller 
           public void setListener(Marshaller.Listener listener)
Marshaller 
           注册元帅事件回调Marshaller.Listener与此Marshaller 。 
每个Marshaller只有一个监听器。 设置侦听器将替换以前设置的侦听器。 通过将侦听器设置为null,可以取消注册当前侦听器。
setListener在界面 
            Marshaller 
           listener -实现一个类的实例Marshaller.Listener 
           public Marshaller.Listener getListener()
Marshaller复制 
          getListener在接口 
            Marshaller 
           Marshaller.Listener或null如果没有监听器注册该Marshaller。 
            Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.