Prévia do material em texto
Prova Impressa GABARITO | Avaliação II - Individual (Cod.:954129) Peso da Avaliação 2,00 Prova 84115142 Qtd. de Questões 10 Acertos/Erros 10/0 Nota 10,00 O mapeamento objeto relacional pode ser descrito como um conjunto de técnicas e ferramentas para representar uma tabela do banco de dados em uma classe de uma linguagem de programação orientada a objetos, sendo que nesse contexto os registros da tabela são representados por instâncias desta classe (objeto). Nesse sentido, a linguagem de programação Java possui duas principais soluções para resolver o problema objeto relacional, sendo uma delas o framework Hibernate, através do JPA, e o padrão DAO. Sobre o exposto, analise o código-fonte "Classe CorRepository" e classifique V para as sentenças verdadeiras e F para as falsas: VOLTAR A+ Alterar modo de visualização 1 28/11/2024, 08:38 Avaliação II - Individual about:blank 1/12 ( ) A figura sendo apresentada ilustra uma classe de persistência no banco de dados utilizando o padrão DAO. ( ) A figura sendo apresentada ilustra uma classe que utiliza a tecnologia JPA para realizar persistência. 28/11/2024, 08:38 Avaliação II - Individual about:blank 2/12 ( ) A interface EntityManager, sendo utilizada em um dos parâmetros do método gravar, é uma interface do JPA. ( ) Na linha 40 está sendo utilizado o método "persist", o qual recebe como parâmetro um objeto do tipo EntityManager. Assinale a alternativa que apresenta a sequência CORRETA: A V - F - F - V. B V - V - V - F. C F - V - V - F. D F - V - V - V. Classe CorRepositoryClique para baixar o anexo da questão O desenvolvimento de aplicações web tornou-se facilitado através do framework JSF (Java Server Faces), o qual possui vários componentes, parecidos com os do HTML, permitindo o desenvolvimento de formulários rapidamente. Além disso, para a criação de uma página de cadastro, por exemplo, basta desenvolver o formulário JSF, através de suas bibliotecas, criar uma classe de controle da tela, Managed Bean, e a interação da classe com a tela estará funcionando. Com relação ao desenvolvimento de formulários em JSF, analise as afirmativas a seguir: I- O JSF possui muitos componentes, como campos de texto, áreas de texto, radio buttons e combo boxes. II- O componente PanelGrid é utilizado para alinhar componentes, determinando o número de colunas para cada linha de componentes. III- Para validar se um campo de um formulário JSF foi informado, é necessário utilizar uma função Javascript. IV- O atributo "validator" de um componente JSF deve ser relacionado a uma função Javascript. Assinale a alternativa CORRETA: A 2 28/11/2024, 08:38 Avaliação II - Individual about:blank 3/12 As afirmativas II e III estão corretas. B As afirmativas I e II estão corretas. C Somente a afirmativa II está correta. D As afirmativas I, II e IV estão corretas. JSF (Java Server faces) é um framework que facilita e agiliza a elaboração de interfaces para sistemas web. Uma das principais características do JSF é que ele separa a lógica das regras de negócio e a navegação das conexões com serviços externos. Tem como ponto forte a possibilidade de um grande número de componentes e apresenta um design bastante flexível. Com relação ao JSF, analise as sentenças a seguir: I- O framework JSF funciona de acordo com o padrão MVC. II- No JSF, o Managed Bean faz o papel de controlador entre a interface gráfica e a entidade. III- O JSF não pode ser utilizado para o gerenciamento de eventos e a conversão de dados no servidor. IV- DataTable é um componente que faz a interface do JSF com a web. Assinale a alternativa CORRETA: A As sentenças I, III e IV estão corretas. B As sentenças I, II e III estão corretas. C As sentenças I, II e IV estão corretas. D As sentenças II, III e IV estão corretas. Em um sistema web de cadastro de produtos, desenvolvido com o framework JSF, foi criada uma tela com a funcionalidade de persistir a tabela do banco de dados "Cor". Para esta tabela, existe uma página XHTML, com o formulário para o usuário cadastrar novas cores. Da mesma forma, existe uma classe Managed Bean chamada "CorMB", uma classe entidade chamada "Cor", e também uma classe de persistência chamada "CorRepository". A classe CorRepository está ilustrada na figura anexa. Com base no código-fonte apresentado, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Na linha 48, os dados do objeto "cor", do parâmetro, já estão inseridos no banco de dados e, com isso, se outra aplicação realizar uma consulta, estes 3 4 28/11/2024, 08:38 Avaliação II - Individual about:blank 4/12 dados serão retornados. ( ) Durante a execução da aplicação, caso ocorrer algum erro (exceção) na linha 46, todas as operações realizadas no banco de dados serão desfeitas. ( ) Caso ser retornado o valor "null" para o objeto "listaGravados", na linha 34, ocorrerá uma exceção (erro) e a operação será abortada. ( ) No método "findCor", linha 59, pode ser retornada uma lista de objetos do tipo "Cor", pois este método retorna uma consulta. Assinale a alternativa que apresenta a sequência CORRETA: A F - V - V - F. B F - V - F - V. 28/11/2024, 08:38 Avaliação II - Individual about:blank 5/12 C V - V - F - F. D F - V - F - F. A API JPA foi desenvolvida com objetivo de 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. Nesse 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 da camada controller da aplicação, sendo as classes de serviço da aplicação. B Define-se o provedor de acesso, as entidades e as propriedades da conexão com a interface principal. C Define-se o mapeamento de componentes da camada de dados para as respectivas interfaces de acesso à aplicação. D Define-se as propriedades de conexão com o banco de dados, a qual poderá ser mitigada utilizando-se de um DataSource. A representação de uma tabela de banco de dados relacional em um objeto (classe instanciada) é solucionada através de algumas técnicas e ferramentas desenvolvidas especificamente para isso. Como exemplo a este problema, a linguagem de programação Java possui o framework de desenvolvimento Hibernate, o qual trabalha com a especificação JPA. Com base no código-fonte apresentado "Classe SubGrupoRepository", classifique V para as sentenças verdadeiras e F para as falsas: 5 6 28/11/2024, 08:38 Avaliação II - Individual about:blank 6/12 ( ) O método inserir utiliza uma sequence do banco de dados para atribuir valor para o atributo "codigo" do objeto "subGrupo". ( ) No método "alterar", é enviado como parâmetro para o método "merge" do EntityManager, um objeto do tipo SubGrupo, o qual é utilizado para alterar o registro equivalente da tabela. ( ) O método "findCor", entre as linhas 49 e 50, retorna uma lista de objetos do tipo "Subgrupo". 28/11/2024, 08:38 Avaliação II - Individual about:blank 7/12 ( ) Os métodos persist, merge e find, do EntityManager, pertencem à especificação JPA do Java. Assinale a alternativa que apresenta a sequência CORRETA: A V - V - V - F. B V - F - F - V. C F - V - V - F. D F - V - F - V. Classe SubGrupoRepositoryClique para baixar o anexo da questão 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 entradade 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 7 28/11/2024, 08:38 Avaliação II - Individual about:blank 8/12 F - V - V - V. D F - V - V - F. Uma das tecnologias Java para desenvolvimento de aplicações web é o Java Server Faces (JSF), o qual se trata de um framework que utiliza a arquitetura MVC, separando a aplicação em três camadas. Esta separação da aplicação em camadas torna a aplicação mais legível, fazendo com que as classes de controle estejam separadas das classes de regras de negócio por exemplo. Com relação ao MVC em uma aplicação JSF, assinale a alternativa CORRETA: A Uma classe entidade, que resolve o problema do objeto relacional, e referencia a uma determinada tabela do banco de dados pertence à camada view da aplicação. B Uma classe Managed Bean pertence à camada view da aplicação, pois este tipo de classe controla formulários JSF e seus componentes. C Uma classe Managed Bean pertence à camada controller da aplicação, pois este tipo de classe controla formulários JSF e seus componentes. D Uma classe de serviço, na qual são implementados métodos com regras de negócio da aplicação, pertence à camada view da aplicação. 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 - V - F. 8 9 28/11/2024, 08:38 Avaliação II - Individual about:blank 9/12 B V - F - F - F. C V - V - F - F. D F - F - F - V. Em um sistema web de cadastro de produtos, desenvolvido com o framework JSF, foi criada uma tela com a funcionalidade de persistir a tabela do banco de dados "Cor". Para esta tabela, existe uma página XHTML, com o formulário para o usuário cadastrar novas cores. Da mesma forma, existe uma classe Managed Bean chamada "CorMB", uma classe entidade chamada "Cor", e também uma classe de persistência chamada "CorRepository". A classe CorRepository está ilustrada na figura anexa. Com base no código-fonte apresentado "Classe CorRepository", analise as sentenças a seguir: 10 28/11/2024, 08:38 Avaliação II - Individual about:blank 10/12 28/11/2024, 08:38 Avaliação II - Individual about:blank 11/12 I- No método "inserir", não é realizada a atribuição de um valor retornado por uma sequence do banco de dados para o atributo "codigo" do objeto "cor". II- Durante a execução da aplicação, caso ocorrer algum erro (exceção) na linha 30, todas as operações realizadas no banco de dados serão desfeitas. III- Caso o objeto "listaGravados", no método "inserir", linha 20, tiver valor "null", ocorrerá uma exceção e a operação será abortada. IV- No método "findCor", linha 41, pode ser retornada uma lista de objetos do tipo "Cor", pois este método retorna uma consulta. Assinale a alternativa CORRETA: A As sentenças III e IV estão corretas. B As sentenças I e II estão corretas. C As sentenças II e IV estão corretas. D As sentenças I e III estão corretas. Classe CorRepositoryClique para baixar o anexo da questão Imprimir 28/11/2024, 08:38 Avaliação II - Individual about:blank 12/12