>  기사  >  백엔드 개발  >  XML PULL과 PUSH 기술의 차이점

XML PULL과 PUSH 기술의 차이점

黄舟
黄舟원래의
2017-03-31 14:35:222006검색

PULL과 SAX는 모두 이벤트를 기반으로 하지만 둘 사이의 가장 중요한 차이점은 다음과 같습니다.

SAX는 PULL이 아닌 "PUSH"로 간주될 수 있습니다. Parser는 특정 이벤트 소스를 발견할 때 처리를 위해 데이터를 콜백 함수 에 전달하기 때문에 데이터는 사용자에게 "푸시"되는 반면, PULL 메소드는 이벤트 소스를 발견할 때 사용됩니다. 특정 이벤트. 사용자가 Parser에서 관심 있는 내용을 얻으면 데이터가 "풀려지는" 느낌을 받습니다.

또 다른 차이점은 PULL 구문 분석 프로세스 중에(while 루프 에서) 루프를 종료할 수 있지만 SAX 프로세스에서는 구문 분석이 시작되면 분석을 완료합니다.

추가로 약간의 확장:
현재 두 가지 주요 구문 분석 및 생성 원칙이 있습니다. 하나는 클래스 이름, 속성 이름 및 기타 정보를 리플렉션을 통해 일치시키는 것이고, 다른 하나는 JVM의 바이트 코드를 직접 사용하여 작동하는 것입니다. 이 두 가지 방법의 효율성은 당연히 바이너리 바이트 코드가 더 효율적입니다.

위 내용은 XML PULL과 PUSH 기술의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.