Baixe o app para aproveitar ainda mais
Prévia do material em texto
Acadêmico: Willis dos Santos Coelho Disciplina: Programação para Web II Avaliação: Avaliação II Prova Objetiva: 1. Entre os diversos modelos de banco de dados existentes, o modelo relacional é ainda o que detém a preferência dos programadores. Contudo, há uma forte tendência de crescimento na utilização dos modelos Orientados a Documentos, como, por exemplo, o MongoDB. Com relação ao MongoDB, analise as sentenças a seguir: I- O MongoDB permite consultas simples, pois é um Banco NoSQL baseado em documento e não possui transações e joins, como os bancos relacionais. II- O MongoDB permite a divisão dos dados em várias máquinas liberando espaço em servidores que estão no limite do armazenamento. III- O MongoDB permite armazenar arquivos no banco de dados, igualmente como ocorre nos modelos de banco de dados relacionais. Assinale a alternativa CORRETA: a) As sentenças I e III estão corretas. b) Somente a sentença III está correta. ✔ c) As sentenças I e II estão corretas. d) As sentenças II e III estão corretas. 2. O desenvolvimento de aplicações web, utilizando a tecnologia JSF, permite a utilização de vários componentes de interface gráfica, o que possibilita a criação de formulários mais rapidamente, sem a necessidade de implementação Javascript. Estes componentes são implementados de forma que fiquem relacionados com a respectiva classe Managed Bean. Com relação ao desenvolvimento de software utilizando a tecnologia JSF, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Em uma página XHTML podemos utilizar vários tipos de componentes, como de entrada de texto, radio buttons e combo boxes, por exemplo. ( ) Para que uma classe seja implementada no padrão Java Bean, ela não deve ter atributos privados com seus métodos getters e setters. ( ) Para que uma aplicação JSF funcione, é necessário ter ao menos um Managed Bean. ( ) Uma classe Managed Bean funciona como receptor das requisições da tela, camada view, e as envia para a camada de negócios, isto é, camada model. Assinale a alternativa que apresenta a sequência CORRETA: ✔ a) V - F - V - V. b) V - F - F - V. c) F - V - V - F. d) F - V - V - V. 3. Um banco de dados é chamado de NoSQL quando não são utilizados comandos SQL para a sua manipulação. Um dos bancos de dados NoSQL mais utilizados é o MongoDB, o qual é orientado a documentos parecidos com JSON, isto é, são gravadas coleções de documentos. Neste sentido, a linguagem utilizada, baseada em documentos, torna as consultas mais fáceis de serem convertidas para este banco. Com relação ao banco de dados MongoDB, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Os documentos são armazenados em uma versão binária do JSON, chamada BSON. ( ) Para inserir um novo registro no banco de dados MongoDB, basta realizar o comando SQL "INSERT INTO" mais a tabela e os valores a serem gravados. ( ) O MongoDB possui alguns comandos para filtro, agregação e classificação, como skip, sort, count, por exemplo. ( ) Através do Shell, é possível gerenciar o banco de dados. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - V. b) V - V - V - F. c) V - V - F - V. ✔ d) V - F - V - V. 4. O Hibernate surgiu no mercado como forma de reforço para as estratégias de mapeamento dos objetos relacionais. Traz grande produtividade, uma vez que poupa o programador de fazer o mapeamento de classes para tabelas de forma manual. Atento a isso, a Oracle, através do JCP, criou uma ferramenta específica para fazer o mapeamento objeto relacional, conhecida como JPA. Sobre a tecnologia JPA, assinale a alternativa CORRETA: a) O JPA não permite realizar o mapeamento objeto-relacional de forma transparente e automatizada. b) O relacionamento das tabelas da base de dados refletem nas classes de entidade criadas na aplicação, e deixam a aplicação mais lenta. c) O programador que faz uso do JPA não precisa conhecer SQL para programar, pois JPA não manipula dados de banco de dados. ✔ d) Dois conceitos importantes da tecnologia são a Unidade de Persistência e o Gerenciador de Persistência. 5. A API JPA fora desenvolvida com vistas a definir um meio de mapeamento objeto- relacional, sendo que suas primeiras versões apresentavam algumas limitações, as quais foram suprimidas com o surgimento de alguns frameworks, tais como, o Hibernate. Neste sentido, ao desenvolver uma aplicação que utiliza JPA e Hibernate, assinale a alternativa CORRETA que identifica a finalidade do arquivo persistence.xml: a) Define-se o mapeamento objeto-relacional entre as tabelas do banco de dados e as classes de entidade da aplicação. b) Define-se o mapeamento de componentes da camada de dados para as respectivas interfaces de acesso à aplicação. ✔ c) Define-se as propriedades de conexão com o banco de dados, a qual poderá ser mitigada utilizando-se de um DataSource. d) Define-se o provedor de acesso, as entidades e as propriedades da conexão com a interface principal. 6. Um dos grandes problemas do paradigma da Orientação a Objetos é o mapeamento de seus objetos e como estes serão dispostos no banco de dados. Esta situação é conhecida como ? mapeamento objeto relacional?. Para resolver o problema, a tecnologia Java liberou a especificação JPA (Java Persistence API) para gerenciamento de persistência. Esta especificação define um padrão para o mapeamento entre objetos Java e bancos de dados. Seu conceito principal é o de entidade. Uma entidade corresponde a um objeto que pode ser gravado na base de dados através de um mecanismo de persistência proposto pelo JPA. Com relação ao JPA, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Unidade de Persistência e Gerenciamento de Persistência são dois conceitos associados à especificação JPA. ( ) No que se refere ao mapeamento de entidades, é recomendado que a classe sempre tenha uma tabela associada. Caso a tabela não exista, o JPA se encarrega de criá-la, de acordo com a especificação mapeada para a classe. ( ) A simplicidade não é uma característica básica do JPA. ( ) O JPA não tem nenhum tipo de responsabilidade com relação ao mapeamento objeto relacional após concluir a criação das tabelas na base de dados. Assinale a alternativa que apresenta a sequência CORRETA: a) V - F - F - F. ✔ b) V - V - F - F. c) F - F - F - V. d) V - F - V - F. 7. O framework JSF permite o desenvolvimento de telas de cadastros para web mais rapidamente, em comparação com outras tecnologias web. Isso porque a biblioteca disponibilizada possui componentes similares aos do HTML, bem fáceis de se implementar, os quais são relacionados ao Managed Bean, que os controla. Com relação ao componente datatable do framework JSF, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Recebe uma lista de objetos do mesmo tipo para gerar uma tabela com linhas e colunas, nas quais são impressos os valores dos atributos de cada objeto. ( ) Neste componente, podemos implementar a criação de botões para alteração ou exclusão do registro da linha em que estes se encontram. ( ) Em uma mesma célula a ser gerada pelo datatable, não é permitido imprimir mais de um atributo do objeto, pois o mesmo não será encontrado no índice da linha da lista. ( ) O navegador de internet do cliente, ao acessar a página que possui uma tabela gerada pelo datatable, recebe uma tabela HTML normal. Assinale a alternativa que apresenta a sequência CORRETA: a) V - F - V - V. b) F - V - V - F. c) V - F - F - V. ✔ d) V - V - F - V. 8. Java Persistence API (JPA) é uma tecnologia desenvolvida para reforçar a persistência de objetos em ambientes relacionais, ou seja, pode ser considerada como um conjunto de classes e métodos que tem como objetivo principal armazenar de forma persistente grande quantidade de objetos em uma base de dados objetos. Com relação à tecnologia JPA, assinale a alternativa CORRETA: ✔a) Pode ser usada em aplicações que não são JEE, e fora do ambiente do servidor. b) Não pode ser considerada uma API de persistência. c) Não utiliza uma linguagem de query (consulta). d) Suporta consultas dinâmicas somente em linguagens nativas. 9. O desenvolvimento de aplicações com a tecnologia JSF pode se tornar mais fácil e produtiva quando é necessária a implementação de formulários. Em páginas XHTML, a composição de formulários utiliza-se de componentes que são similares aos componentes HTML de formulários. Neste contexto, analise as afirmativas a seguir: I- Em uma página XHTML, para o desenvolvimento de formulários JSF, é necessária a importação da biblioteca "http://java.sun.com/jsf/html". II- Em uma página XHTML, o componente "<h:outputLabel /h>" é equivalente ao componente "<input />" do HTML. III- Em uma página XHTML, o componente "<h:selectOneRadio /h>" é equivalente ao componente "<Select />" do HTML. IV- Em uma página XHTML, o componente "<h:selectOneRadio /h>" é equivalente ao componente "<input type=radio />" do HTML. Assinale a alternativa CORRETA: ✔ a) As afirmativas I e IV estão corretas. b) As afirmativas I, II e III estão corretas. c) As afirmativas I e III estão corretas. d) Somente a afirmativa II está correta. 10. Um dos principais tipos de classes necessários quando se implementa um software utilizando a tecnologia JSF, é o Managed Bean. O Managed Bean serve como uma classe controladora, servindo como intermediadora entre as camadas view e model da aplicação. Com relação ao Managed Bean, analise as afirmativas a seguir: I- Uma classe Managed Bean pode ter implementados atributos e métodos. II- Uma classe Managed Bean pode ter eventos implementados, os quais são invocados por requisições de componentes. III- Uma classe Managed Bean não pode pode ser serializada, pois desta forma não permitiria a recepção de eventos oriundos da camada view. IV- Uma classe Managed Bean, deve ser implementada de forma que realize acessos diretos ao banco de dados, não necessitando de outras classes, como do padrão DAO, por exemplo. Assinale a alternativa CORRETA: ✔ a) As afirmativas I e II estão corretas. b) Somente a afirmativa II está correta. c) As afirmativas I, III e IV estão corretas. d) As afirmativas II e III estão corretas.
Compartilhar