java.lang.Object javax.xml.bind.Unmarshaller.Listener
public abstract static class Unmarshaller.Listener
向 Unmarshaller
注册此类的一个实现的实例,以便外部侦听解组事件。
此类可以在将 XML 数据解组到 JAXB 映射类中时启用对 JAXB 映射类实例的预处理和后处理。在将 XML 内容解组到 JAXBElement 实例或表示复杂类型定义的 JAXB 映射类中时,将调用事件回调。解组到表示简单类型定义的 Java 数据类型的实例时,不需要调用事件回调。
外部侦听器是用于定义解组事件回调的两个不同机制之一。请参阅 Unmarshal Event Callbacks 获得对这方面的概括。
(@link #setListener(Listener)} (@link #getListener()}
构造方法摘要 | |
---|---|
Unmarshaller.Listener() |
方法摘要 | |
---|---|
void |
afterUnmarshal(Object target, Object parent) 将 XML 数据解组到 target 之后调用的回调方法。 |
void |
beforeUnmarshal(Object target, Object parent) 在解组到 target 之前调用的回调方法。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public Unmarshaller.Listener()
方法详细信息 |
---|
public void beforeUnmarshal(Object target, Object parent)
在解组到 target 之前调用的回调方法。
在创建 target 之后且在开始解组此对象之前立即调用此方法。注意,如果 target 的类定义了自己的 beforeUnmarshal 方法,则在调用此方法之前调用特定于类的回调方法。
target
- 解组之前的 JAXB 映射类的非 null 实例。
parent
- 将最终引用
target 的 JAXB 映射类的实例。当
target 是根元素时,该参数为
null。
public void afterUnmarshal(Object target, Object parent)
将 XML 数据解组到 target 之后调用的回调方法。
在将所有属性(IDREF 除外)解组到 target 之后、但在将 target 设置为其 parent 对象之前调用此方法。注意,如果 target 的类定义了自己的 afterUnmarshal 方法,则在调用此方法之前调用特定于类的回调方法。
target
- 解组之前的 JAXB 映射类的非 null 实例。
parent
- 将引用
target 的 JAXB 映射类的实例。当
target 是根元素时,该参数为
null。