Java XML 파서는 XML 데이터와 함께 작동하는 데 사용됩니다. XML은 데이터를 전송하거나 저장하기 위해 널리 사용되는 기술입니다. 그래서 많은 Java XML 파서가 있습니다.
Java XML 파서
일반적으로 사용되는 일부 Java XML 파서는 다음과 같습니다.
- DOM 파서
- SAX 파서
- StAX 파서
- JAXB
기타 XML 파싱을 위한 다른 API도 Java에서 사용할 수 있습니다. 예를 들어 JDOM
과 JiBX
입니다. 이 Java XML 파서 튜토리얼은 다양한 종류의 XML 처리 API를 탐색하고 읽기, 쓰기 및 편집과 같은 일반적인 작업을 배우기 위한 것입니다.
Java XML 파서 – DOM
DOM 파서는 가장 쉬운 Java XML 파서입니다. DOM 파서는 XML 파일을 메모리에 로드하고 노드별로 트래버스하여 XML을 파싱할 수 있습니다. DOM 파서는 작은 파일에 적합하지만 파일 크기가 커지면 성능이 느리고 메모리를 많이 소비합니다.
- XML 파일 읽기 이 문서는 DOM 파서를 사용하여 XML 파일을 객체로 파싱하는 방법을 보여줍니다.
- XML 파일 쓰기 이 문서는 DOM 파서를 사용하여 객체 데이터를 XML 파일로 쓰는 방법을 설명합니다.
- XML 파일 편집 DOM 파서를 사용하여 XML 데이터를 편집할 수도 있습니다. 이 문서는 DOM 파서를 사용하여 XML 문서에서 요소를 추가하고 삭제하고 요소 값을 수정하고 속성을 편집하는 방법을 보여줍니다.
Java XML 파서 – SAX
Java SAX 파서는 XML 문서를 파싱하기 위한 API를 제공합니다. SAX 파서는 DOM 파서와 다르며 완전한 XML을 메모리에 로드하지 않고 순차적으로 XML 문서를 읽습니다. 이는 이벤트 기반 파서로서 XML 파일을 파싱하기 위해 콜백 메서드를 가진 Handler 클래스를 구현해야 합니다. 대용량 XML 파일에 대해서는 시간과 메모리 사용량 측면에서 DOM 파서보다 효율적입니다.
- XML 파일 읽기 SAX 파서를 사용하여 XML 파일을 객체 목록으로 읽는 Callback Handler 클래스를 만드는 방법을 배웁니다.
StAX Java XML 파서
XML을 처리하기 위한 Java Streaming API (Java StAX)는 두 가지 종류의 API로 구성됩니다 – 커서 기반 API와 반복자 기반 API. 저는 이 Java XML 파서를 다양한 포스트에서 상세히 다루었습니다.
- StAX 반복자 API를 사용하여 XML 파일 읽기 이 튜토리얼에서는 Java StAX (
XMLEventReader
)를 사용하여 XML을 반복적으로 읽는 방법을 배우게 됩니다. - StAX 반복자 API를 사용하여 XML 파일 쓰기 이 튜토리얼에서는 StAX 반복자 기반 API (
XMLEventWriter
)를 사용하여 Java에서 XML 파일을 작성하는 방법을 살펴보겠습니다. - StAX Cursor API를 사용하여 XML 파일 읽기 이 문서는 StAX Cursor API (
XMLStreamReader
)를 사용하여 XML 데이터를 객체로 읽는 방법을 보여줍니다. - StAX Cursor API를 사용하여 XML 파일 쓰기 Java StAX Cursor API는 XML을 생성하고 출력하는 데 매우 직관적입니다.
XMLStreamWriter
객체를 생성하고 데이터를 쓰는 것이 필요합니다. 이 튜토리얼은 예제와 함께 자세히 설명합니다.
Java XML 파서 – JDOM
JDOM은 XML 문서를 쉽게 읽고 편집하고 쓸 수 있는 훌륭한 Java XML 파서 API를 제공합니다. JDOM은 SAX 파서, DOM 파서, STAX 이벤트 파서 및 STAX 스트림 파서 중에 사용할 하위 구현을 선택하기 위한 래퍼 클래스를 제공합니다. JDOM을 사용하는 장점은 SAX에서 DOM으로 또는 STAX 파서로 쉽게 전환할 수 있으며, 클라이언트 응용 프로그램이 구현을 선택할 수 있도록 팩토리 메서드를 제공할 수 있다는 것입니다.
- JDOM으로 XML 파일 읽기 이 튜토리얼에서는 JDOM XML 파서를 사용하여 XML 파일을 객체로 읽는 방법을 배우겠습니다.
- JDOM XML 파일 쓰기 이 튜토리얼에서는 JDOM을 사용하여 Java에서 XML 파일을 쓰는 방법을 배우게 됩니다. JDOM 문서는 요소와 속성을 쉽게 만들 수 있는 메서드를 제공합니다.
XMLOutputter
클래스를 사용하여 문서를OutputStream
또는Writer
객체로 쓸 수 있습니다. - JDOM XML 파일 편집 JDOM은 XML 파일을 조작하는 매우 깔끔한 방법을 제공하며, JDOM을 사용하는 것은 매우 쉽고 코드가 깔끔하고 읽기 쉽습니다. 이 튜토리얼에서는 요소 추가, 요소 제거, 요소 값 편집 및 속성 값 편집하는 방법을 배우게 됩니다.
Java XML 파서 – JAXB
XML 바인딩을 위한 Java 아키텍처 (JAXB)는 객체를 XML로 변환하고 XML을 객체로 변환하는 API를 제공합니다. JAXB는 별도의 프로젝트로 개발되었지만 널리 사용되어 최종적으로 Java 6의 JDK의 일부가 되었습니다.
- JAXB 튜토리얼 JAXB 사용은 매우 쉽고 주석을 사용합니다. Java 객체에 주석을 달아 XML 작성을 지시하고 나서
Marshaller
를 만들어 객체를 XML로 변환해야 합니다.Unmarshaller
는 XML을 Java 객체로 변환하는 데 사용됩니다. 이 튜토리얼에서는 가장 널리 사용되는 JAXB 주석 및 Java 객체를 XML로 변환하는 방법 (Marshalling) 및 XML을 Java 객체로 변환하는 방법 (Unmarshalling)을 배울 것입니다.
Java XML 파서 – JiBX
JiBX는 XML 데이터를 Java 객체로 변환하고 그 반대의 강력한 프레임워크입니다. 이는 XML이 데이터 전송의 형식인 응용 프로그램 통합에서 매우 유용합니다. 예를 들어 웹 서비스 및 메시지 지향 모델(MOM)을 기반으로 한 레거시 시스템 통합과 관련이 있습니다.
- JiBX 튜토리얼 JAXB 및 XMLBeans와 같은 XML 변환을위한 여러 프레임워크가 있지만 JiBX는 XML 바인딩 및 변환 프로세스에 대한 접근 방식에서 차이가 있습니다. JiBX는 컴파일 시간에 ant 스크립트를 통해 생성 된 유틸리티 클래스를 통해이 작업을 수행합니다. 이 접근 방식은 기타 파서의 전통적인 두 단계 프로세스에서 한 단계로 이동하여 처리 시간을 줄입니다.
XPath
XPath는 XML 문서의 일부를 정의하는 데 사용되는 구문을 제공합니다. XPath 표현식은 쿼리 문자열을 기반으로 XML 문서의 일부를 선택하기 위한 쿼리 언어입니다. XPath 표현식을 사용하면 쿼리 문자열을 충족하는 어떤 XML 문서의 노드도 찾을 수 있습니다.
- XPath 튜토리얼 javax.xml.xpath 패키지는 Java에서 XPath 지원을 제공합니다. XPathExpression을 생성하려면 XPath API에서 팩토리 메서드를 제공합니다. 이 튜토리얼에서는 XPath 쿼리 언어를 사용하여 지정된 기준을 충족하는 요소를 찾을 것입니다.
기타 Java XML 파서 작업
- Eclipse에서 XSD에서 샘플 XML 생성 웹 서비스 작업 중이라면 XSD를 사용하고 웹 서비스를 테스트하려면 XSD 파일에서 XML을 생성해야 합니다. Eclipse는 XSD에서 XML을 생성하는 매우 쉬운 방법을 제공합니다.
- XML 스키마에 대한 XML 유효성 검사 Java XML 유효성 검사 API를 사용하여 XML을 XSD에 대해 유효성을 검사할 수 있습니다. 이 튜토리얼에서는
javax.xml.validation.Validator
클래스를 사용하여 xml 파일을 xsd 파일에 대해 유효성을 검사하는 방법을 설명합니다. - Java XML 속성 파일 일반적으로 Java 응용 프로그램의 구성 매개변수를 속성 파일에 저장합니다. Java 속성 파일은 키-값 쌍이 포함된 일반 속성 파일이거나 XML 파일일 수 있습니다. 이 예제에서는 속성 XML 파일을 작성하고 XML 속성 파일에서 속성을 읽는 방법을 알아봅니다.
- SOAP XML Soap은 XML 기반의 전송 프로토콜입니다. Soap은 간단한 객체 액세스 프로토콜을 나타냅니다. Soap은 구조화되고 형식이 지정된 정보를 교환하기 위한 경량 메커니즘입니다. XML 기반이므로 언어 및 플랫폼 독립적입니다. 이 튜토리얼에서는 SOAP XML에 대해 알아보고 Liquid XML Studio 소프트웨어를 사용하여 어떻게 만들 수 있는지 배우게 될 것입니다.
- XML 문서 형식 지정 XML을 예쁘게 출력하고 XML 문서를 문자열로 변환하고 문자열을 XML 문서로 변환하는 메서드를 가진 유틸리티 클래스입니다.
- 문서를 문자열로 변환하고 문자열을 문서로 변환하기 때로는 자바로 프로그래밍할 때 XML인 것처럼 보이는 문자열을 얻게 되는데, 이를 처리하려면 XML 문서(org.w3c.dom.Document)로 변환해야 합니다. 또한 디버깅 목적이나 다른 함수에 보내기 위해 문서 객체를 문자열로 변환해야 할 수도 있습니다. 문자열을 XML 문서로, 그리고 XML 문서를 문자열로 변환하는 두 가지 유틸리티 메서드가 있습니다.
I will be adding more java XML parser tutorials here as and when I post more, so don’t forget to bookmark it for future use.
Source:
https://www.digitalocean.com/community/tutorials/java-xml-parser