Prévia do material em texto
<p>Desenvolvimento Java Web</p><p>Professor(a): Ariel Da Silva Dias (Mestrado acadêmico)</p><p>1)</p><p>2)</p><p>3)</p><p>Prepare-se! Chegou a hora de você testar o conhecimento adquirido nesta disciplina. A Avaliação Virtual (AV) é composta por questões objetivas e</p><p>corresponde a 100% da média final. Você tem até cinco tentativas para “Enviar” as questões, que são automaticamente corrigidas. Você pode responder</p><p>as questões consultando o material de estudos, mas lembre-se de cumprir o prazo estabelecido. Boa prova!</p><p>Sempre que um usuário faz qualquer solicitação à camada ____________ utilizando um componente da camada __________, ele entra em contato</p><p>com a camada ___________ apropriada, a qual retorna uma representação de ___________ de tudo o que o usuário solicitou.</p><p>Assinale a alternativa que completa adequadamente as lacunas:</p><p>Alternativas:</p><p>Controller; View; Model; Dados. CORRETO</p><p>Model; Controller; View; Conteúdo.</p><p>View; Controller; Model; Conteúdo.</p><p>View; Model; Controller; Dados.</p><p>Model; View; Controller; Números.</p><p>Código da questão: 60875</p><p>Sobre servidores web e servidores de aplicação, analise as afirmativas a seguir e assinale-as com V (verdadeiro) ou F (falso):</p><p>( ) Um dos servidores da web mais populares no ecossistema Java é o Apache Tomcat.</p><p>( ) Um servidor web expõe a lógica de negócios aos aplicativos clientes por meio de vários protocolos.</p><p>( ) Glassfish é um servidor de aplicativos de código aberto, também patrocinado pela Microsoft.</p><p>( ) A maioria dos servidores de aplicações também contém um servidor da Web.</p><p>( ) Os ambientes de desenvolvimento Eclipse e o NetBeans são dois dos mais populares para o desenvolvimento Java EE.</p><p>Assinale a alternativa que contenha a sequência correta de V e F:</p><p>Alternativas:</p><p>F – V – V – F – V.</p><p>V – F – V – F – F.</p><p>F – V – F – V – F.</p><p>V – V – F – F – V.</p><p>V – F – F – V – V. CORRETO</p><p>Código da questão: 60862</p><p>Analise com atenção a figura a seguir:</p><p>Figura - Códigos para manipulação de banco de dados</p><p>Resolução comentada:</p><p>O usuário realiza solicitações ao controlador (camada controller) por meio da interface do usuário, que é a camada view. Após realizar esta</p><p>solicitação, ele entra em contato com a camada model, a qual retorna uma representação de dados de acordo com o que o usuário solicitou.</p><p>Resolução comentada:</p><p>A afirmativa I é verdadeira, pois existem diversos servidores web para trabalharmos, dentre eles os mais populares são o Apache Tomcat e o</p><p>Internet Information Services, da Microsoft, porém, este último não está inserido no ecossistema Java.</p><p>A afirmativa II é falsa, pois por definição o correto é que um servidor de aplicação expõe a lógica de negócios aos aplicativos clientes por meio</p><p>de vários protocolos.</p><p>A afirmativa III é falsa, pois apesar do Glassfish ser um servidor de código aberto, ele não é patrocinado pela Microsoft conforme foi</p><p>declarado na afirmativa.</p><p>A afirmativa IV é verdadeira, pois a maioria dos servidores de aplicações também contém um servidor da Web, o que significa que você pode</p><p>considerar um servidor da Web como um subconjunto de um servidor de aplicações.</p><p>A afirmativa V é verdadeira, pois os principais ambientes de desenvolvimentos Java, principalmente relacionados ao Java EE, são o Eclipse e o</p><p>Netbeans.</p><p>4)</p><p>Fonte: elaborada pelo autor.</p><p>Sobre os códigos fontes 1 e 2 apresentados na imagem, podemos afirmar que:</p><p>I. O código 1 apresenta uma classe com as anotações JPA e mapeia a entity com a tabela funcionários do banco de dados.</p><p>II. Nas linhas 15, 18, 21 e 24 o código apresenta uma anotação JPA para mapear o campo da entity com as colunas na tabela funcionários do banco</p><p>de dados.</p><p>III. No arquivo hibernate.cfg.xml devemos referenciar o código 2 em , onde name recebe o nome da entity.</p><p>IV. O código 1 apresentará um erro na linha 11, uma vez que a anotação diz que a tabela chama-se funcionários e a entity tem o nome Empregado.</p><p>V. O código 1 cria uma nova tabela no banco de dados e insere uma linha nesta tabela com o endereço e o nome do empregado.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>III - V.</p><p>IV - V.</p><p>III - IV.</p><p>II - IV.</p><p>I - II. CORRETO</p><p>Código da questão: 60885</p><p>Sobre banco de dados relacional e não relacional, analise as afirmativas a seguir e assinale-as com V (verdadeiro) ou F (falso):</p><p>( ) Em um banco de dados não relacional, a chave primária tem o mesmo comportamento de uma chave estrangeira.</p><p>( ) O banco de dados relacional possui o conceito de linhas e colunas, e os dados são armazenados em tabelas.</p><p>( ) Os bancos de dados não relacionais são usados principalmente para manipular grandes volumes de dados estruturados.</p><p>( ) Banco de dados de documentos e JSON são exemplos de tipos de banco de dados não relacionais.</p><p>( ) O MongoDB é um exemplo de banco de dados não relacional que oferece suporte a dados não estruturados.</p><p>Assinale a alternativa que contenha a sequência correta de V e F:</p><p>Alternativas:</p><p>F – F – V – F – F.</p><p>F – V – F – V – V. CORRETO</p><p>V - F - F - V - F.</p><p>V - F - V - V - V.</p><p>Resolução comentada:</p><p>A afirmação I é verdadeira, pois a classe Empregado no código 1 está com anotações JPA para mapear os atributos da entity com as colunas</p><p>no banco de dados, mais especificamente na tabela funcionários, como indica a anotação da linha 10.</p><p>A afirmação II é verdadeira, pois nas referidas linhas estão as anotações para relacionar os atributos da entity com os campos na tabela</p><p>funcionários.</p><p>A afirmação III é falsa, pois o arquivo de configuração é usado para armazenar informações de conexão com o banco de dados e configuração</p><p>de nível de esquema. Nele é necessário indicar a persistência, neste caso, o correto neste arquivo seria: , onde name tem o mesmo valor que</p><p>apresentado na linha x do código 2.</p><p>A afirmação IV é falsa, pois a entity ou classe Java não precisa ter o mesmo nome que a tabela no banco de dados, logo, não haverá erro.</p><p>A afirmação V é falsa, pois no código 1 é criado um novo objeto e será inserida uma linha na tabela do banco de dados, não será criada uma</p><p>nova tabela.</p><p>5)</p><p>6)</p><p>7)</p><p>V - V - F - F - V.</p><p>Código da questão: 60883</p><p>A internet possui uma vasta gama de recursos hospedados em diferentes servidores. Para você acessar esses recursos, seu navegador precisa</p><p>enviar uma __________ aos servidores e exibir os recursos para você. ____________ é o protocolo usado para estruturar as _________ e as _________ para</p><p>uma comunicação eficaz entre um cliente e um servidor.</p><p>Alternativas:</p><p>Requisição; HTML; Páginas web; Respostas.</p><p>Comunicação; HTML; Páginas web; Requisições.</p><p>Comunicação; HTTP; Páginas web; Respostas.</p><p>Comunicação; HTML; Requisições; Respostas.</p><p>Requisição; HTTP; Requisições; Respostas. CORRETO</p><p>Código da questão: 60872</p><p>____________ é uma tecnologia para desenvolver páginas da Web que suportam conteúdo ___________. Trata-se de um tipo de ____________, que</p><p>ajuda os desenvolvedores a inserir o código ___________ em páginas ___________.</p><p>Alternativas:</p><p>JSP; Dinâmico; Linguagem; Servlet; Web.</p><p>JSP; Servlet; Linguagem; Servlet; HTML.</p><p>JSP; Dinâmico; Servlet; Java; HTML. CORRETO</p><p>Servlet; JSP; Linguagem; JSP; HTML.</p><p>Servlet; Dinâmico; JSP; HTML; Web.</p><p>Código da questão: 60868</p><p>___________ é útil para construir sites ___________ e acessar informações de banco de dados em um ___________. Embora as páginas ___________</p><p>possam ter Java intercalado com HTML, todo o código Java é analisado no servidor. Portanto, assim que a página chega ao navegador, é apenas</p><p>HTML.</p><p>Alternativas:</p><p>JSP - dinâmicos - repositório - web.</p><p>Servlet - web - repositório - JSP.</p><p>JSP - dinâmicos - servidor web - JSP. CORRETO</p><p>Servlet - dinâmicos - servidor web - web.</p><p>Resolução comentada:</p><p>A segunda, a quarta e a quinta afirmativas são verdadeiras.</p><p>Primeira – O conceito de chave primária e chave estrangeira está presente apenas em banco de dados relacional. Em banco de dados não</p><p>relacional, como não há o conceito de relação, então não há chave estrangeira.</p><p>Terceira – Os bancos de dados não relacionais são usados principalmente para manipular grandes volumes de dados não estruturados. Afinal,</p><p>não existe uma estrutura de tabelas,</p><p>linhas e colunas no banco de dados não relacional.</p><p>Resolução comentada:</p><p>O protocolo HTTP é o formato que permite a comunicação entre cliente e servidor. O HTTP pode realizar requisições e receber respostas no</p><p>formato de mensagens. Ele possui métodos como o GET, que é usado para solicitar dados de um recurso específico, e o POST, que é usado</p><p>para enviar dados para um servidor.</p><p>Resolução comentada:</p><p>O JavaServer Pages (JSP) é um modelo para criação de página Web que usa código Java para gerar um documento HTML dinamicamente. Os</p><p>JSPs são executados em um componente do lado do servidor conhecido como contêiner JSP, que os converte em Java servlets.</p><p>8)</p><p>9)</p><p>10)</p><p>Servlet - web - servidor - web.</p><p>Código da questão: 60873</p><p>O MVC é um modelo de __________ de aplicativo composto por três partes interconectadas. Eles incluem o modelo (_________), a visualização</p><p>(_________) e o controlador (__________). Este modelo fornece os componentes fundamentais para o design de programas para desktop ou celular,</p><p>além de aplicativos da web.</p><p>Assinale a alternativa que completa adequadamente as lacunas:</p><p>Alternativas:</p><p>Framework; Interface; Dados; Manipulação de entrada.</p><p>Design; Dados; Interface; Manipulação de entrada. CORRETO</p><p>Design; Interface; Manipulação de entrada; Dados.</p><p>Estrutura; Manipulação de entrada; Interface; Dados.</p><p>Framework; Manipulação de entrada; Dados; Interface.</p><p>Código da questão: 60879</p><p>O _________ é uma especificação de baixo nível se comparado ao ___________. A proposta do desenvolvimento do ___________ é de ser uma API</p><p>para interagir com um banco de dados usando SQL puro - enviando consultas e recuperando resultados. Ao usar o ___________, cabe a você traduzir</p><p>o conjunto de resultados vindos do banco em objetos Java.</p><p>Alternativas:</p><p>JDBC; JPA; JDBC; JDBC. CORRETO</p><p>JPA; JDBC; JPA; JPA.</p><p>JDBC; JPA; JDBC; JPA.</p><p>JPA; JDBC; JDBC; JDBC.</p><p>JDBC; JPA; JPA; JDBC.</p><p>Código da questão: 60886</p><p>Leia e associe as duas colunas:</p><p>Resolução comentada:</p><p>JSPs, como servlets, são programas do lado do servidor executados dentro de um servidor HTTP compatível com Java. O JSP foi desenvolvido</p><p>para criarmos conteúdo web dinâmicos, como, por exemplo, acessar um banco de dados no servidor e os retornar ao cliente. O JSP torna a</p><p>criação e manutenção de páginas dinâmicas HTML muito mais fácil do que o servlet, por isso é mais conveniente para lidar com a</p><p>apresentação.</p><p>Resolução comentada:</p><p>As três camadas do MVC estão interconectadas, onde a view é responsável pela interface e é por onde o usuário interage com a aplicação; a</p><p>camada modelo está relacionada aos dados e permite a reutilização de um mesmo objeto em views diferentes; a camada do controlador</p><p>contém a lógica do negócio, com as classes lógicas da aplicação.</p><p>Resolução comentada:</p><p>JDBC é uma interface de programação de baixo nível entre um aplicativo Java e um banco de dados. Deste modo, usamos o JDBC para obter</p><p>uma conexão com o banco de dados e, a partir desta conexão, podemos emitir comandos SQL puro. Logo, para utilizar o JDBC é importante</p><p>que o desenvolvedor tenha um conhecimento de SQL. O JPA é uma especificação de alto nível, se comparada ao JDBC, uma vez que suas</p><p>implementações são executadas acima do JDBC.</p><p>Assinale a alternativa que traz a associação correta entre as duas colunas:</p><p>Alternativas:</p><p>I-B; II-C; III-A.</p><p>I-C; II-A; III-B. CORRETO</p><p>I-C; II-B; III-A.</p><p>I-B; II-A; III-C.</p><p>I-A; II-B; III-C.</p><p>Código da questão: 60870</p><p>Resolução comentada:</p><p>Arquivos e Links</p>