SAXParser

SAXParser (SAX 파서)

XMLReader 구현 클래스를 감싸는 API를 정의하는 추상 클래스예요. XML을 다양한 입력 소스에서 SAX 이벤트로 파싱할 수 있어요.

출처: Java API Reference

본문

public abstract class SAXParser
    extends Object

SAXParser는 XMLReader 구현 클래스를 감싸는 API를 정의해요. JAXP 1.0에서는 Parser 인터페이스를 감쌌지만, 그 인터페이스는 이후 XMLReader로 대체됐어요. 전환의 편의를 위해 이 클래스는 같은 이름과 인터페이스를 계속 지원하면서 새로운 메서드도 지원해요.

인스턴스는 SAXParserFactory.newSAXParser() 메서드로 얻을 수 있어요. 인스턴스를 얻으면 InputStream, File, URL, SAX InputSource 등 다양한 입력 소스에서 XML을 파싱할 수 있어요.

parse(InputStream, DefaultHandler), parse(File, HandlerBase) 등의 메서드가 있고, 기본 파서가 내용을 파싱하면서 주어진 HandlerBase나 DefaultHandler의 메서드를 호출해요.

isNamespaceAware(), isValidating()은 파서 설정을 확인하고, getProperty()/setProperty()로 추가 속성을 다뤄요. XMLReader를 감싸는 구현체는 ParserAdapter 클래스를 고려해 SAX1 구현을 이 개정된 클래스에서 동작하도록 적응시킬 수 있어요.

더 알아보기

Java 공식 API