SóProvas


ID
17878
Banca
CESGRANRIO
Órgão
BNDES
Ano
2008
Provas
Disciplina
Programação
Assuntos

Que API deve ser utilizada em uma aplicação Java EE 5 para leitura e manipulação (parse) de um fluxo (stream) de dados XML, com rapidez e baixo consumo de memória RAM?

Alternativas
Comentários
  • StAX
    The Streaming API for XML (StAX) parsing will specify a Java-based, pull-parsing API for XML. The streaming API gives parsing control to the programmer by exposing a simple iterator based API. This allows the programmer to ask for the next event (pull the event) and allows state to be stored in a procedural fashion.
    Two recently proposed JSRs, JAXB and JAX-RPC, highlight the need for an XML Streaming API. Both data binding and remote procedure calling (RPC) require processing of XML as a stream of events, where the current context of the XML defines subsequent processing of the XML. A streaming API makes this type of code much more natural to write than SAX, and much more efficient than DOM.

    The goal of this API is to develop APIs and conventions that support processing XML as a stream. The specification will address three main areas:

    Develop APIs and conventions that allow a user to programmatically pull parse events from an XML input stream.
    Develop APIs that allow a user to write events to an XML output stream.
    Develop a set of objects and interfaces that encapsulate the information contained in an XML stream.
    The specification should be easy to use, efficient, and not require a grammar. It should include support for namespaces, and associated XML constructs. The specification will make reasonable efforts to define APIs that are "pluggable".
    Non-goals of this specification include:

    Specifying a validation API. Validation will be done in the layer above the streaming parser. This does not preclude passing validation parameters to an underlying parser.
    Specific dependence on an XML grammar.
    Support for applications that transform or edit a DTD.
  • "Comentário: A resposta a esta questão é somente o nome de uma das API’s existentes na plataforma Java EE 5. Pois bem, conhecendo o significado de cada uma dessas siglas já é o suficiente para conseguir resolver esta questão. Então Vamos a eles!

    A - DOM(Document Objetc Model): o DOM é uma especificação da W3C(World Wide web Consortium) que define uma interface neutra em relação a linguagem e plataforma de desenvolvimento para que programas e scripts possam acessar e alterar a informação contida em documentos HTML/XML. Trata-se de um modelo de manipulação de documentos, e não uma API Java EE 5;

    B - AJAX( Asynchronous Javascript and Xm): O Ajax é uma combinação das tecnologias Javascript com XML que tem como base possibilitar a transferência assíncrona de informações entre o navegador web e o servidor que contém a página. Pode prover maior dinamismo e interatividade na web. Novamente, não se trata de API do Java EE 5.

    C - XPATH: este talves seja mais simples ainda que os outros dois primeiros. o XPATH é a linguagem utilizada para se fazer referência a itens dentro de um objeto XML(também chamado de endereçamento). É a forma de se navegar entre os elementos/atributos de um documento XML.

    D - StAX( Streaming API for XML): Agora sim temos à mão uma API. A StAX é uma API presente na plataforma Java EE e que permite ao usuário manipular documentos XML em aplicações Java. Ela permite a criação de parsers bidirecionais(constução e recuperação de documentos XML) e é a API mais recente da JAXP(Java API for XML Processing).

    E - XSLT(eXtensible Stylesheet Language Transformation): o XSLT é parte de uma família de recomendações da W3C que definem como manipular documentos XML efetuando transformações neste documento e definindo a forma de apresentação deste documento. Novamente não flinks interessantes:
    1) http://java.sun.com/javaee/5/docs/tutorial/doc/bnbdv.html
    2) https://jaxp.dev.java.net/
    3) http://www.w3.org/
    Bons Estudos!
    Junho 3, 2008 - Escrito por computacaoeconcurso