类 StaxUtils
- java.lang.Object
- org.springframework.util.xml.StaxUtils
public abstract class StaxUtils extends Object
Convenience methods for working with the StAX API. Partly historic due to JAXP 1.3 compatibility; as of Spring 4.0, relying on JAXP 1.4 as included in JDK 1.6 and higher.In particular, methods for using StAX (
javax.xml.stream) in combination with the TrAX API (javax.xml.transform), and converting StAX readers/writers into SAX readers/handlers and vice-versa.- 从以下版本开始:
- 3.0
- 作者:
- Arjen Poutsma, Juergen Hoeller
构造器概要
构造器 构造器 说明 StaxUtils()
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static ContentHandlercreateContentHandler(XMLEventWriter eventWriter)Create a SAXContentHandlerthat writes events to the given StAXXMLEventWriter.static ContentHandlercreateContentHandler(XMLStreamWriter streamWriter)Create a SAXContentHandlerthat writes to the given StAXXMLStreamWriter.static ResultcreateCustomStaxResult(XMLEventWriter eventWriter)Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLEventWriter.static ResultcreateCustomStaxResult(XMLStreamWriter streamWriter)Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLStreamWriter.static SourcecreateCustomStaxSource(XMLEventReader eventReader)Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLEventReader.static SourcecreateCustomStaxSource(XMLStreamReader streamReader)Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLStreamReader.static XMLInputFactorycreateDefensiveInputFactory()Create anXMLInputFactorywith Spring's defensive setup, i.e. no support for the resolution of DTDs and external entities.static <T extends XMLInputFactory>
TcreateDefensiveInputFactory(Supplier<T> instanceSupplier)Variant ofcreateDefensiveInputFactory()with a custom instance.static XMLStreamReadercreateEventStreamReader(XMLEventReader eventReader)Return aXMLStreamReaderthat reads from aXMLEventReader.static XMLStreamWritercreateEventStreamWriter(XMLEventWriter eventWriter)Return aXMLStreamWriterthat writes to aXMLEventWriter.static XMLStreamWritercreateEventStreamWriter(XMLEventWriter eventWriter, XMLEventFactory eventFactory)Return aXMLStreamWriterthat writes to aXMLEventWriter.static ResultcreateStaxResult(XMLEventWriter eventWriter)Create a JAXP 1.4StAXResultfor the givenXMLEventWriter.static ResultcreateStaxResult(XMLStreamWriter streamWriter)Create a JAXP 1.4StAXResultfor the givenXMLStreamWriter.static SourcecreateStaxSource(XMLEventReader eventReader)Create a JAXP 1.4StAXSourcefor the givenXMLEventReader.static SourcecreateStaxSource(XMLStreamReader streamReader)Create a JAXP 1.4StAXSourcefor the givenXMLStreamReader.static XMLEventReadercreateXMLEventReader(List<XMLEvent> events)Create aXMLEventReaderfrom the given list ofXMLEvent.static XMLReadercreateXMLReader(XMLEventReader eventReader)Create a SAXXMLReaderthat reads from the given StAXXMLEventReader.static XMLReadercreateXMLReader(XMLStreamReader streamReader)Create a SAXXMLReaderthat reads from the given StAXXMLStreamReader.static XMLEventReadergetXMLEventReader(Source source)Return theXMLEventReaderfor the given StAX Source.static XMLEventWritergetXMLEventWriter(Result result)Return theXMLEventWriterfor the given StAX Result.static XMLStreamReadergetXMLStreamReader(Source source)Return theXMLStreamReaderfor the given StAX Source.static XMLStreamWritergetXMLStreamWriter(Result result)Return theXMLStreamWriterfor the given StAX Result.static booleanisStaxResult(Result result)Indicate whether the givenResultis a JAXP 1.4 StAX Result or custom StAX Result.static booleanisStaxSource(Source source)Indicate whether the givenSourceis a JAXP 1.4 StAX Source or custom StAX Source.
构造器详细资料
StaxUtils
public StaxUtils()
方法详细资料
createDefensiveInputFactory
public static XMLInputFactory createDefensiveInputFactory()
Create anXMLInputFactorywith Spring's defensive setup, i.e. no support for the resolution of DTDs and external entities.- 返回:
- a new defensively initialized input factory instance to use
- 从以下版本开始:
- 5.0
createDefensiveInputFactory
public static <T extends XMLInputFactory> T createDefensiveInputFactory(Supplier<T> instanceSupplier)
Variant ofcreateDefensiveInputFactory()with a custom instance.- 参数:
instanceSupplier- supplier for the input factory instance- 返回:
- a new defensively initialized input factory instance to use
- 从以下版本开始:
- 5.0.12
createStaxSource
public static Source createStaxSource(XMLStreamReader streamReader)
Create a JAXP 1.4StAXSourcefor the givenXMLStreamReader.- 参数:
streamReader- the StAX stream reader- 返回:
- a source wrapping the
streamReader
createStaxSource
public static Source createStaxSource(XMLEventReader eventReader) throws XMLStreamException
Create a JAXP 1.4StAXSourcefor the givenXMLEventReader.- 参数:
eventReader- the StAX event reader- 返回:
- a source wrapping the
eventReader - 抛出:
XMLStreamException
createCustomStaxSource
public static Source createCustomStaxSource(XMLStreamReader streamReader)
Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLStreamReader.- 参数:
streamReader- the StAX stream reader- 返回:
- a source wrapping the
streamReader
createCustomStaxSource
public static Source createCustomStaxSource(XMLEventReader eventReader)
Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLEventReader.- 参数:
eventReader- the StAX event reader- 返回:
- a source wrapping the
eventReader
isStaxSource
public static boolean isStaxSource(Source source)
Indicate whether the givenSourceis a JAXP 1.4 StAX Source or custom StAX Source.- 返回:
trueifsourceis a JAXP 1.4StAXSourceor custom StAX Source;falseotherwise
getXMLStreamReader
@Nullable public static XMLStreamReader getXMLStreamReader(Source source)
Return theXMLStreamReaderfor the given StAX Source.- 参数:
source- a JAXP 1.4StAXSource- 返回:
- the
XMLStreamReader - 抛出:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXSourceor custom StAX Source
getXMLEventReader
@Nullable public static XMLEventReader getXMLEventReader(Source source)
Return theXMLEventReaderfor the given StAX Source.- 参数:
source- a JAXP 1.4StAXSource- 返回:
- the
XMLEventReader - 抛出:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXSourceor custom StAX Source
createStaxResult
public static Result createStaxResult(XMLStreamWriter streamWriter)
Create a JAXP 1.4StAXResultfor the givenXMLStreamWriter.- 参数:
streamWriter- the StAX stream writer- 返回:
- a result wrapping the
streamWriter
createStaxResult
public static Result createStaxResult(XMLEventWriter eventWriter)
Create a JAXP 1.4StAXResultfor the givenXMLEventWriter.- 参数:
eventWriter- the StAX event writer- 返回:
- a result wrapping
streamReader
createCustomStaxResult
public static Result createCustomStaxResult(XMLStreamWriter streamWriter)
Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLStreamWriter.- 参数:
streamWriter- the StAX stream writer- 返回:
- a source wrapping the
streamWriter
createCustomStaxResult
public static Result createCustomStaxResult(XMLEventWriter eventWriter)
Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLEventWriter.- 参数:
eventWriter- the StAX event writer- 返回:
- a source wrapping the
eventWriter
isStaxResult
public static boolean isStaxResult(Result result)
Indicate whether the givenResultis a JAXP 1.4 StAX Result or custom StAX Result.- 返回:
trueifresultis a JAXP 1.4StAXResultor custom StAX Result;falseotherwise
getXMLStreamWriter
@Nullable public static XMLStreamWriter getXMLStreamWriter(Result result)
Return theXMLStreamWriterfor the given StAX Result.- 参数:
result- a JAXP 1.4StAXResult- 返回:
- the
XMLStreamReader - 抛出:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXResultor custom StAX Result
getXMLEventWriter
@Nullable public static XMLEventWriter getXMLEventWriter(Result result)
Return theXMLEventWriterfor the given StAX Result.- 参数:
result- a JAXP 1.4StAXResult- 返回:
- the
XMLStreamReader - 抛出:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXResultor custom StAX Result
createXMLEventReader
public static XMLEventReader createXMLEventReader(List<XMLEvent> events)
Create aXMLEventReaderfrom the given list ofXMLEvent.- 参数:
events- the list ofXMLEvents.- 返回:
- an
XMLEventReaderthat reads from the given events - 从以下版本开始:
- 5.0
createContentHandler
public static ContentHandler createContentHandler(XMLStreamWriter streamWriter)
Create a SAXContentHandlerthat writes to the given StAXXMLStreamWriter.- 参数:
streamWriter- the StAX stream writer- 返回:
- a content handler writing to the
streamWriter
createContentHandler
public static ContentHandler createContentHandler(XMLEventWriter eventWriter)
Create a SAXContentHandlerthat writes events to the given StAXXMLEventWriter.- 参数:
eventWriter- the StAX event writer- 返回:
- a content handler writing to the
eventWriter
createXMLReader
public static XMLReader createXMLReader(XMLStreamReader streamReader)
Create a SAXXMLReaderthat reads from the given StAXXMLStreamReader.- 参数:
streamReader- the StAX stream reader- 返回:
- a XMLReader reading from the
streamWriter
createXMLReader
public static XMLReader createXMLReader(XMLEventReader eventReader)
Create a SAXXMLReaderthat reads from the given StAXXMLEventReader.- 参数:
eventReader- the StAX event reader- 返回:
- a XMLReader reading from the
eventWriter
createEventStreamReader
public static XMLStreamReader createEventStreamReader(XMLEventReader eventReader) throws XMLStreamException
Return aXMLStreamReaderthat reads from aXMLEventReader. Useful because the StAXXMLInputFactoryallows one to create an event reader from a stream reader, but not vice-versa.- 返回:
- a stream reader that reads from an event reader
- 抛出:
XMLStreamException
createEventStreamWriter
public static XMLStreamWriter createEventStreamWriter(XMLEventWriter eventWriter)
Return aXMLStreamWriterthat writes to aXMLEventWriter.- 返回:
- a stream writer that writes to an event writer
- 从以下版本开始:
- 3.2
createEventStreamWriter
public static XMLStreamWriter createEventStreamWriter(XMLEventWriter eventWriter, XMLEventFactory eventFactory)
Return aXMLStreamWriterthat writes to aXMLEventWriter.- 返回:
- a stream writer that writes to an event writer
- 从以下版本开始:
- 3.0.5