Java
파싱(Parsing)
good_da22
2022. 7. 31. 23:41
Parsing
문서에서 필요한 정보를 얻기 위해 태그를 구별하고 내용을 추출하는 과정
전문적인 parser 활용
SAX parser
Simple API for XML parser
문서를 읽으면서 태그의 시작, 종료 등 이벤트 기반으로 처리하는 방식
빠르고 한번에 처리하기 때문에 다양한 탐색이 어렵다.
DOM parser
Document Object Model
문서를 다 읽고 난 후 문서 구조 전체를 자료구조에 저장하여 탐색하는 방식
다양한 탐색이 가능하지만 느리고 무거우며 큰 문서를 처리하기 어렵다.
SAX(Simple API for XML) parser
문서를 읽다가 발생하는 이벤트 기반으로 문서 처리
" alt="SAX parser">
SAX Parser Factory : SAX Parser 생성
SAX Parser : 문서 parsing (DefaultHandler 참조)
DefaultHandler : 필요한 메서드 정의
MyHandler : DefaultHandler 메서드 중 필요 부분 재정의(Overrinding)
DOM(Document Object Model) parser
문서를 완전히 메모리에 로딩 후 필요한 내용 탐색
" alt="Dom parser">
Document Builder Factory : Document Builder 생성
Document Builder : 문서 parsing, DOM Tree 구성
DOM Tree : business logic, 문서를 구성하는 모든 요소를 Node(태그, 속성, 값)로 구성,
태그들은 root node를 시작으로 부모 - 자식 관계 구성