Buscar

Simulados 1 ao 10 - Programação Cliente Servidor

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PROGRAMAÇÃO CLIENTE SERVIDOR 
1a aula 
 
 
 
Exercício: CCT0780_EX_A1_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Com o uso de DOM é possível navegar entre os diversos elementos de um documento HTML ou XML, e existem diferentes tipos de 
nós nesta árvore de navegação. Qual dos elementos seguintes NÃO é um tipo de nó do DOM? 
 
 Element 
 
Attr 
 Value 
 
CDATASection 
 
Comment 
Respondido em 16/09/2019 21:28:28 
 
 
Explicação: 
A árvore DOM não tem nós denominados Value. Os nós podem ser Element (elemento), Attr (atributo), Text (texto), CDATASection 
(conteúdo ignorado pelo parser) e Comment (comentário). 
 
 
 
 
 2a Questão 
 
 
As tags responsáveis por quebra de linha, criação de parágrafo e criação de tabelas são, respectivamente: 
 
 < br > < p > < tr > 
 
< p > < br > < table > 
 
< table > < br > < tr > 
 < br > < p > < table > 
 
< tr > < p > < br > 
Respondido em 16/09/2019 21:28:30 
 
 
Explicação: 
As tags seriam br (break), p (paragraph) e table. A tag tr define uma linha da tabela, enquanto td definiria uma célula. 
 
 
 
 
 3a Questão 
 
 
Qual comando CSS seria utilizado para formatar uma camada de id "XPTO" com fonte na cor azul? 
 
 XPTO {background-color:blue} 
 
#XPTO {background-color:blue} 
 
XPTO {color:blue} 
 
.XPTO {color:blue} 
 #XPTO {color:blue} 
Respondido em 16/09/2019 21:28:32 
 
 
Explicação: 
A sintaxe CSS permite a formatação de tags, sem o uso de símbolos iniciais, IDs, com o uso de #, e classes, com o uso de ponto. A 
cor da fonte é definida através de color, enquanto o fundo é definido por background-color. Baseado nisso, a sintaxe correta seria 
#XPTO{color:blue}. 
 
 
 
 
 4a Questão 
 
 
A linguagem HTML 5 permite a utilização de diversas outras sintaxes na escrita do documento. Qual destas sintaxes é voltada para a 
construção de figuras vetoriais simples, como retângulos e círculos? 
 
 MathML 
 
XML 
 
Java Script 
 SVG 
 
JSON 
Respondido em 16/09/2019 21:28:35 
 
 
Explicação: 
A sintaxe SVG (Scalable Vector Graphics) permite a criação de formas simples com algum nível de interatividade. 
 
 
 
 
 5a Questão 
 
 
Na sintaxe da linguagem HTML para a construção de formulários, qual o tipo de INPUT deve ser utilizado para opções mutuamente 
exclusivas? 
 
 
sumbit 
 text 
 radio 
 
checkbox 
 
hidden 
Respondido em 16/09/2019 21:28:36 
 
 
Explicação: 
Usando componentes radio com o mesmo "name", é possível definir elementos mutuamente exclusivos, ou seja, ao marcar uma 
opção as demais são desmarcadas. 
 
 
 
 
 6a Questão 
 
 
Ao criar um hiperlink, qual o atributo que definirá para qual endereço ocorrerá a navegação? 
 
 href 
 
destination 
 
target 
 
value 
 
src 
Respondido em 16/09/2019 21:28:39 
 
 
Explicação: 
O formato geral de um hiperlink seria: < a href = "Endereço HTTP" > Texto da Âncora < /a > 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
1a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A1_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Ao criar um hiperlink, qual o atributo que definirá para qual endereço ocorrerá a navegação? 
 
 value 
 
target 
 
destination 
 href 
 
src 
Respondido em 16/09/2019 22:15:59 
 
 
Explicação: 
O formato geral de um hiperlink seria: < a href = "Endereço HTTP" > Texto da Âncora < /a > 
 
 
 
 
 2a Questão 
 
 
Com o uso de DOM é possível navegar entre os diversos elementos de um documento HTML ou XML, e existem diferentes tipos de 
nós nesta árvore de navegação. Qual dos elementos seguintes NÃO é um tipo de nó do DOM? 
 
 Attr 
 
Comment 
 Value 
 
Element 
 
CDATASection 
Respondido em 16/09/2019 22:16:01 
 
 
Explicação: 
A árvore DOM não tem nós denominados Value. Os nós podem ser Element (elemento), Attr (atributo), Text (texto), CDATASection 
(conteúdo ignorado pelo parser) e Comment (comentário). 
 
 
 
 
 3a Questão 
 
 
As tags responsáveis por quebra de linha, criação de parágrafo e criação de tabelas são, respectivamente: 
 
 < p > < br > < table > 
 
< table > < br > < tr > 
 
< tr > < p > < br > 
 
< br > < p > < tr > 
 < br > < p > < table > 
Respondido em 16/09/2019 22:16:03 
 
 
Explicação: 
As tags seriam br (break), p (paragraph) e table. A tag tr define uma linha da tabela, enquanto td definiria uma célula. 
 
 
 
 
 4a Questão 
 
 
Na sintaxe da linguagem HTML para a construção de formulários, qual o tipo de INPUT deve ser utilizado para opções mutuamente 
exclusivas? 
 
 sumbit 
 
checkbox 
 radio 
 
hidden 
 
text 
Respondido em 16/09/2019 22:16:05 
 
 
Explicação: 
Usando componentes radio com o mesmo "name", é possível definir elementos mutuamente exclusivos, ou seja, ao marcar uma 
opção as demais são desmarcadas. 
 
 
 
 
 5a Questão 
 
 
Qual comando CSS seria utilizado para formatar uma camada de id "XPTO" com fonte na cor azul? 
 
 #XPTO {background-color:blue} 
 
XPTO {color:blue} 
 
.XPTO {color:blue} 
 
XPTO {background-color:blue} 
 #XPTO {color:blue} 
Respondido em 16/09/2019 22:16:07 
 
 
Explicação: 
A sintaxe CSS permite a formatação de tags, sem o uso de símbolos iniciais, IDs, com o uso de #, e classes, com o uso de ponto. A 
cor da fonte é definida através de color, enquanto o fundo é definido por background-color. Baseado nisso, a sintaxe correta seria 
#XPTO{color:blue}. 
 
 
 
 
 6a Questão 
 
 
A linguagem HTML 5 permite a utilização de diversas outras sintaxes na escrita do documento. Qual destas sintaxes é voltada para a 
construção de figuras vetoriais simples, como retângulos e círculos? 
 
 Java Script 
 
JSON 
 
MathML 
 SVG 
 
XML 
Respondido em 16/09/2019 22:16:09 
 
 
Explicação: 
A sintaxe SVG (Scalable Vector Graphics) permite a criação de formas simples com algum nível de interatividade. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
2a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A2_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Quais números serão impressos pelo código Java Script? 
for(i = 1; i < 15; i = i * 2) { 
 if(i%5!=0) 
 document.writeln("< br/ >"+i); 
} 
 
 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14 
 
1, 3, 5, 7, 9, 11, 13 
 
1, 3, 5, 7, 9, 11, 13, 15 
 
1, 3, 7, 9, 11, 13 
 1,2,4,8 
Respondido em 16/09/2019 21:28:57 
 
 
Explicação: 
Neste loop são impressos apenas números que NÃO sejam divisíveis por 5, e apresenta atualização exponencial, sendo o valor inicial 
1, seguido de 1 * 2 = 2, 2 * 2 = 4, 4 * 2 = 8. No próximo ocorrerá o número 16, que é maior que 15. 
Logo, como nenhum destes números é diisível por 5, serão impressos: 1,2,4,8. 
 
 
 
 
 2a Questão 
 
 
Considerando três variáveis, x, y, e w, onde x vale 1 e y vale 5, qual o valor de w após a execução do comando? 
w = 200 / (5 - (x < y) ? 1 : 3) + 2; 
 
 33 
 52 
 
50 
 
66 
 
102 
Respondido em 16/09/2019 21:29:00 
 
 
Explicação: 
Como x é menor que y, 5 -1 = 4. A divisão tem precedência sobre a soma, logo, 200 / 4 = 50, e 50 + 2 = 52. 
 
 
 
 
 3a Questão 
 
 
Considerando o código Java Script seguinte, qual será o valor final de b? 
var a=1, b=1; 
while(a < 5) { 
 b = b * a; 
 a++; 
} 
 
 4 
 
1 
 24 
 
5 
 
11 
Respondido em 16/09/2019 21:29:03 
 
 
Explicação: 
Primeira rodada: b = 1, a = 2 
Segunda rodada: b = 2 * 1 = 2, a = 3 
Terceira rodada: b = 2 * 3 = 6, a = 4 
Quarta rodada: b = 6 * 4 = 24, a = 5 
 
 
 
 
 4a Questão 
 
 
Indique a opção que apresenta apenas operadores relacionais. 
 
 Operadores >, <, = e ! 
 
Operadores +, -, * e / 
 
Operadores &&, || e ! 
 Operadores >=, <, == e != 
 
Operadores +, -, < e * 
Respondido em 16/09/2019 21:29:05 
 
 
Explicação: 
Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=. 
 
 
 
 
 5a Questão 
 
 
Assumindo que x vale 1 e y vale 5, quais seriam, respectivamente, os resultados das seguintes expressões? 
(x > y) && (y-2 < 3) 
(y < 3 * x) || (x*y <= y) 
!((x < y)||(y < x)) 
 
 false, false, false 
 
true, true, false 
 false, true, false 
 
true, false, true 
 
true, true, true 
Respondido em 16/09/2019 21:29:08 
 
 
Explicação: 
Analisando as expressões: 
 
(x > y) && (y-2 < 3) -> (1 > 5) && (3 < 3) -> F && F -> F 
(y < 3 * x) || (x*y <= y) -> (5 < 3) || (5 <= 5) -> F || T -> T 
!((x < y)||(y < x)) -> !((1 < 5) || (5 < 1)) -> !(T || F) -> !T -> F 
 
 
 
 
 6a Questão 
 
 
No Java Script, uma janela do tipo "prompt": 
 
 Exibe uma lista para que o usuário selecione um ou mais valores. 
 
Exibe apenas uma informação para o usuário. 
 Permite que o usuário insira uma frase dentro da caixa de texto. 
 
Solicita uma confirmação do usuário, positiva ou negativa. 
 
Permite a seleção de data a partir de um calendário. 
Respondido em 16/09/2019 21:29:10 
 
 
Explicação: 
O comando prompt é utilizado como uma entrada de dados de texto, como em: 
var x = prompt("Digite seu nome",""); 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
2a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A2_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Indique a opção que apresenta apenas operadores relacionais. 
 
 Operadores &&, || e ! 
 
Operadores +, -, * e / 
 Operadores >=, <, == e != 
 
Operadores >, <, = e ! 
 
Operadores +, -, < e * 
Respondido em 16/09/2019 22:16:25 
 
 
Explicação: 
Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=. 
 
 
 
 
 2a Questão 
 
 
Considerando o código Java Script seguinte, qual será o valor final de b? 
var a=1, b=1; 
while(a < 5) { 
 b = b * a; 
 a++; 
} 
 
 24 
 
5 
 
1 
 
4 
 
11 
Respondido em 16/09/2019 22:16:28 
 
 
Explicação: 
Primeira rodada: b = 1, a = 2 
Segunda rodada: b = 2 * 1 = 2, a = 3 
Terceira rodada: b = 2 * 3 = 6, a = 4 
Quarta rodada: b = 6 * 4 = 24, a = 5 
 
 
 
 
 3a Questão 
 
 
Considerando três variáveis, x, y, e w, onde x vale 1 e y vale 5, qual o valor de w após a execução do comando? 
w = 200 / (5 - (x < y) ? 1 : 3) + 2; 
 
 102 
 52 
 
66 
 
33 
 
50 
Respondido em 16/09/2019 22:16:30 
 
 
Explicação: 
Como x é menor que y, 5 - 1 = 4. A divisão tem precedência sobre a soma, logo, 200 / 4 = 50, e 50 + 2 = 52. 
 
 
 
 
 4a Questão 
 
 
Assumindo que x vale 1 e y vale 5, quais seriam, respectivamente, os resultados das seguintes expressões? 
(x > y) && (y-2 < 3) 
(y < 3 * x) || (x*y <= y) 
!((x < y)||(y < x)) 
 
 false, false, false 
 
true, true, false 
 false, true, false 
 
true, true, true 
 
true, false, true 
Respondido em 16/09/2019 22:16:32 
 
 
Explicação: 
Analisando as expressões: 
 
(x > y) && (y-2 < 3) -> (1 > 5) && (3 < 3) -> F && F -> F 
(y < 3 * x) || (x*y <= y) -> (5 < 3) || (5 <= 5) -> F || T -> T 
!((x < y)||(y < x)) -> !((1 < 5) || (5 < 1)) -> !(T || F) -> !T -> F 
 
 
 
 
 5a Questão 
 
 
Quais números serão impressos pelo código Java Script? 
for(i = 1; i < 15; i = i * 2) { 
 if(i%5!=0) 
 document.writeln("< br/ >"+i); 
} 
 
 1, 3, 7, 9, 11, 13 
 
1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14 
 
1, 3, 5, 7, 9, 11, 13, 15 
 1,2,4,8 
 
1, 3, 5, 7, 9, 11, 13 
Respondido em 16/09/2019 22:16:35 
 
 
Explicação: 
Neste loop são impressos apenas números que NÃO sejam divisíveis por 5, e apresenta atualização exponencial, sendo o valor inicial 
1, seguido de 1 * 2 = 2, 2 * 2 = 4, 4 * 2 = 8. No próximo ocorrerá o número 16, que é maior que 15. 
Logo, como nenhum destes números é diisível por 5, serão impressos: 1,2,4,8. 
 
 
 
 
 6a Questão 
 
 
No Java Script, uma janela do tipo "prompt": 
 
 Solicita uma confirmação do usuário, positiva ou negativa. 
 
Exibe uma lista para que o usuário selecione um ou mais valores. 
 
Exibe apenas uma informação para o usuário. 
 
Permite a seleção de data a partir de um calendário. 
 Permite que o usuário insira uma frase dentro da caixa de texto. 
Respondido em 16/09/2019 22:16:38 
 
 
Explicação: 
O comando prompt é utilizado como uma entrada de dados de texto, como em: 
var x = prompt("Digite seu nome",""); 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
3a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A3_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Quando falamos das ações que um objeto pode realizar estamos nos referindo a: 
 
 Herança 
 
Atributos 
 
Nível de Acesso 
 
Agrupamentos 
 Métodos 
Respondido em 16/09/2019 21:29:34 
 
 
Explicação: 
Os elementos básicos de uma classe são os métodos, definindo ações que podem ser executadas, e atributos, com as características 
físicas do objeto que será instanciado. 
 
 
 
 
 2a Questão 
 
 
Caso fosse necessário validar um campo para CPF, de acordo com a regra de formação do número, logo que o usuário saísse da 
caixa de texto, o evento correto seria: 
 
 onsubmit 
 
onclick 
 
onfocus 
 onblur 
 
onchange 
Respondido em 16/09/2019 21:29:36 
 
 
Explicação: 
O evento onblur ocorre na perda do foco, permitindo adicionar máscaras ou apagar o conteúdo quando uma regra é quebrada, a 
exemplo do dígito verificador do CPF. 
 
 
 
 
 3a Questão 
 
 
Considerando o trecho de código HTML seguinte, qual seria o comando em Java Script para guardar o texto da camada em uma 
variável? 
< div id="XPTO" > EXEMPLO < /div > 
 
 var obj = document.getElementById("XPTO").value; 
 
var obj = document.querySelector("XPTO").nodeValue; 
 var obj = document.getElementById("XPTO").firstChild.nodeValue; 
 
var obj = document.querySelector("#XPTO").children[1]; 
 
var obj = document.querySelector("#XPTO"); 
Respondido em 16/09/2019 21:29:38 
 
 
Explicação: 
Com getElementById iremos pegar um nó de elemento, devendo acessar o seu filho imediato na árvore DOM, o qual é um nó de 
texto. A partir deste nó de texto podemos obter o valor interno através do atributo nodeValue.4a Questão 
 
 
Quanto à validação de formulários em Java Script, é correto afirmar que: 
 
 Quando associada ao evento de envio do formulário necessita de uma função sem retorno de valor. 
 
Permite se utilizar de recursos locais, entre eles o acesso a bancos de dados e arquivos presentes no computador cliente. 
 Efetua críticas relativas à formatação e regras simples de interface, ao mesmo 
tempo em que diminui o fluxo de chamadas desnecessárias ao servidor. 
 
As críticas relativas à formatação são realizadas com sucessivas chamadas ao servidor. 
 
Pode ser utilizada para substituir os testes de consistência referentes aos relacionamentos do banco de dados, 
normalmente efetuados no servidor. 
Respondido em 16/09/2019 21:29:40 
 
 
Explicação: 
O uso de JavaScript nos formulários irá permitir validações simples, mas não podem ser feitos acessos a recursos servidores, como 
críticas em Bancos de Dados, ou aos recursos locais da máquina, como arquivos. A principal finalidade é diminuir o fluxo de dados 
incorretos até o servidor. 
 
 
 
 
 5a Questão 
 
 
Diversos eventos podem ser utilizados no processo de validação de formulários. Qual deles deve ser utilizado para efetuar críticas 
quando o valor de um campo é alterado? 
 
 onfocus 
 onchange 
 
onblur 
 
onsubmit 
 
onclick 
Respondido em 16/09/2019 21:29:42 
 
 
Explicação: 
O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança. 
 
 
 
 
 6a Questão 
 
 
Em termos de orientação a objetos, o Java Script permite a definição de novas classes com o uso de uma palavra específica. Que 
palavra é esta? 
 
 new 
 
return 
 function 
 
var 
 
this 
Respondido em 16/09/2019 21:29:44 
 
 
Explicação: 
Uma classe em Java Script é definida a partir de um função (function), sendo os atributos internos delineados com o uso de this. 
Com a nova classe definida, os objetos podem ser instanciados com o uso de new e guardados em variáveis. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
3a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A3_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Em termos de orientação a objetos, o Java Script permite a definição de novas classes com o uso de uma palavra específica. Que 
palavra é esta? 
 
 new 
 
var 
 
this 
 function 
 
return 
Respondido em 16/09/2019 22:16:56 
 
 
Explicação: 
Uma classe em Java Script é definida a partir de um função (function), sendo os atributos internos delineados com o uso de this. 
Com a nova classe definida, os objetos podem ser instanciados com o uso de new e guardados em variáveis. 
 
 
 
 
 2a Questão 
 
 
Diversos eventos podem ser utilizados no processo de validação de formulários. Qual deles deve ser utilizado para efetuar críticas 
quando o valor de um campo é alterado? 
 
 onclick 
 onchange 
 
onblur 
 
onsubmit 
 
onfocus 
Respondido em 16/09/2019 22:16:58 
 
 
Explicação: 
O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança. 
 
 
 
 
 3a Questão 
 
 
Considerando o trecho de código HTML seguinte, qual seria o comando em Java Script para guardar o texto da camada em uma 
variável? 
< div id="XPTO" > EXEMPLO < /div > 
 
 var obj = document.getElementById("XPTO").firstChild.nodeValue; 
 
var obj = document.querySelector("#XPTO").children[1]; 
 
var obj = document.querySelector("XPTO").nodeValue; 
 
var obj = document.querySelector("#XPTO"); 
 
var obj = document.getElementById("XPTO").value; 
Respondido em 16/09/2019 22:17:00 
 
 
Explicação: 
Com getElementById iremos pegar um nó de elemento, devendo acessar o seu filho imediato na árvore DOM, o qual é um nó de 
texto. A partir deste nó de texto podemos obter o valor interno através do atributo nodeValue. 
 
 
 
 
 4a Questão 
 
 
Quanto à validação de formulários em Java Script, é correto afirmar que: 
 
 As críticas relativas à formatação são realizadas com sucessivas chamadas ao servidor. 
 
Quando associada ao evento de envio do formulário necessita de uma função sem retorno de valor. 
 
Permite se utilizar de recursos locais, entre eles o acesso a bancos de dados e arquivos presentes no computador cliente. 
 Efetua críticas relativas à formatação e regras simples de interface, ao mesmo 
tempo em que diminui o fluxo de chamadas desnecessárias ao servidor. 
 
Pode ser utilizada para substituir os testes de consistência referentes aos relacionamentos do banco de dados, 
normalmente efetuados no servidor. 
Respondido em 16/09/2019 22:17:03 
 
 
Explicação: 
O uso de JavaScript nos formulários irá permitir validações simples, mas não podem ser feitos acessos a recursos servidores, como 
críticas em Bancos de Dados, ou aos recursos locais da máquina, como arquivos. A principal finalidade é diminuir o fluxo de dados 
incorretos até o servidor. 
 
 
 
 
 5a Questão 
 
 
Caso fosse necessário validar um campo para CPF, de acordo com a regra de formação do número, logo que o usuário saísse da 
caixa de texto, o evento correto seria: 
 
 onclick 
 
onsubmit 
 onblur 
 
onfocus 
 
onchange 
Respondido em 16/09/2019 22:17:04 
 
 
Explicação: 
O evento onblur ocorre na perda do foco, permitindo adicionar máscaras ou apagar o conteúdo quando uma regra é quebrada, a 
exemplo do dígito verificador do CPF. 
 
 
 
 
 6a Questão 
 
 
Quando falamos das ações que um objeto pode realizar estamos nos referindo a: 
 
 Atributos 
 
Agrupamentos 
 
Nível de Acesso 
 Métodos 
 
Herança 
Respondido em 16/09/2019 22:17:06 
 
 
Explicação: 
Os elementos básicos de uma classe são os métodos, definindo ações que podem ser executadas, e atributos, com as características 
físicas do objeto que será instanciado. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
4a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A4_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Diversos efeitos são disponibilizados com o uso de JQuery. Qual deles faria com que uma DIV desaparecesse "lentamente"? 
 
 show 
 fadeOut 
 
shake 
 
fadeIn 
 
hide 
Respondido em 16/09/2019 21:30:16 
 
 
Explicação: 
O efeito fadeOut apaga lentamente o componente, enquanto fadeIn exibe lentamente, show exibe instantaneamente, hide apaga 
instantaneamente, e shake faz ele "tremer". 
 
 
 
 
 2a Questão 
 
 
No uso do JQuery, o seletor $("li:odd") serviria para selecionar: 
 
 O primeiro item de cada lista. 
 
O item central de cada lista da página. 
 
O último item de cada lista. 
 Todas as ocorrências ímpares de itens de lista. 
 
Todas as ocorrências pares de itens de lista. 
Respondido em 16/09/2019 21:30:19 
 
 
Explicação: 
Se utilizássemos apenas li, estariamos buscando esta tag ao longo da página, ou seja, todos os itens de lista. Porém, com o uso do 
limitador :odd passamos a considerar apenas os elementos ímpares. 
 
 
 
 
 3a Questão 
 
 
Assinale a opção INCORRETA acerca do método ready. 
 
 Equivale ao uso do evento onLoad do HTML padrão. 
 
É o primeiro instante em que se torna possível o acesso a qualquer componente HTML da página. 
 Pode ser associado a uma DIV para execução aofinal da carga da mesma. 
 
Está associado ao objeto $(document). 
 
É executado quando a página está totalmente carregada. 
Respondido em 16/09/2019 21:30:20 
 
 
Explicação: 
O método ready é de uso exclusivo de $(document), sendo chamado ao final da carga da PÁGINA, como ocorre no tratamento do 
evento onLoad com uso de Java Script. 
 
 
 
 
 4a Questão 
 
 
Analise as seguintes afirmativas acerca da sintaxe JSON e assinale a opção correta. 
I - Valores numéricos devem ser colocados entre aspas. 
II - Valores nulos são representados por null. 
III - Vetores são definidos com o uso de chaves. 
 
 Todas as afirmativas são falsas. 
 
Todas as afirmativas são verdadeiras. 
 
Apenas as afirmativas I e III são verdadeiras. 
 Apenas a afirmativa II é verdadeira. 
 
Apenas as afirmativas II e III são verdadeiras. 
Respondido em 16/09/2019 21:30:23 
 
 
Explicação: 
A afirmativa I está incorreta porque os números não utilizam aspas, e a de número III está incorreta porque vetores utilizam 
colchetes. Quanto ao nulo, ele realmente é representado como null. 
 
 
 
 
 5a Questão 
 
 
Considerando o trecho de códgo HTML seguinte, qual seletor seria utilizado para acessar o primeiro item da segunda lista? 
< ul id="A1" > 
 < li > Um < /li > 
 < li > Dois < /li > 
< /ul > 
< ul id="A2" > 
 < li > Três < /li > 
 < li > Quatro < /li > 
< /ul > 
 
 $("#A2, li:first") 
 
$("ul, .A2, li:first") 
 
$("#A2:first li") 
 $("#A2 li:first") 
 
$("ul .A2:first li") 
Respondido em 16/09/2019 21:30:26 
 
 
Explicação: 
Para acessar a segunda lista, fazemos pelo id #A2, e dentro dela pegamos o primeiro item com li:first. O seletor será, portanto, #A2 
li:first. 
 
 
 
 
 6a Questão 
 
 
Ao implementar uma página, com uso de JQuery, deseja-se que os campos de texto fiquem com o fundo amarelo quando ganharem 
o foco, branco quando perderem o foco e laranja quando o conteúdo for modificado. Quais métodos devem ser utilizados, 
respectivamente? 
 
 mouseenter, mouseleave e change 
 
keydown, keyup e keypress 
 
focus, blur e click 
 focus, blur e change 
 
mouseenter, mouseleave e click 
Respondido em 16/09/2019 21:30:31 
 
 
Explicação: 
O método focus é executado quando o INPUT ganha o foco, blur quando ele perde e change quando seu atributo value é alterado. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
4a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A4_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Ao implementar uma página, com uso de JQuery, deseja-se que os campos de texto fiquem com o fundo amarelo quando ganharem 
o foco, branco quando perderem o foco e laranja quando o conteúdo for modificado. Quais métodos devem ser utilizados, 
respectivamente? 
 
 focus, blur e change 
 
mouseenter, mouseleave e click 
 
keydown, keyup e keypress 
 
focus, blur e click 
 
mouseenter, mouseleave e change 
Respondido em 16/09/2019 22:17:25 
 
 
Explicação: 
O método focus é executado quando o INPUT ganha o foco, blur quando ele perde e change quando seu atributo value é alterado. 
 
 
 
 
 2a Questão 
 
 
Diversos efeitos são disponibilizados com o uso de JQuery. Qual deles faria com que uma DIV desaparecesse "lentamente"? 
 
 fadeOut 
 
fadeIn 
 
shake 
 
show 
 
hide 
Respondido em 16/09/2019 22:17:27 
 
 
Explicação: 
O efeito fadeOut apaga lentamente o componente, enquanto fadeIn exibe lentamente, show exibe instantaneamente, hide apaga 
instantaneamente, e shake faz ele "tremer". 
 
 
 
 
 3a Questão 
 
 
No uso do JQuery, o seletor $("li:odd") serviria para selecionar: 
 
 O último item de cada lista. 
 
O item central de cada lista da página. 
 
Todas as ocorrências pares de itens de lista. 
 
O primeiro item de cada lista. 
 Todas as ocorrências ímpares de itens de lista. 
Respondido em 16/09/2019 22:17:29 
 
 
Explicação: 
Se utilizássemos apenas li, estariamos buscando esta tag ao longo da página, ou seja, todos os itens de lista. Porém, com o uso do 
limitador :odd passamos a considerar apenas os elementos ímpares. 
 
 
 
 
 4a Questão 
 
 
Considerando o trecho de códgo HTML seguinte, qual seletor seria utilizado para acessar o primeiro item da segunda lista? 
< ul id="A1" > 
 < li > Um < /li > 
 < li > Dois < /li > 
< /ul > 
< ul id="A2" > 
 < li > Três < /li > 
 < li > Quatro < /li > 
< /ul > 
 
 $("ul .A2:first li") 
 $("#A2 li:first") 
 
$("ul, .A2, li:first") 
 
$("#A2, li:first") 
 
$("#A2:first li") 
Respondido em 16/09/2019 22:17:32 
 
 
Explicação: 
Para acessar a segunda lista, fazemos pelo id #A2, e dentro dela pegamos o primeiro item com li:first. O seletor será, portanto, #A2 
li:first. 
 
 
 
 
 5a Questão 
 
 
Assinale a opção INCORRETA acerca do método ready. 
 
 É executado quando a página está totalmente carregada. 
 
Equivale ao uso do evento onLoad do HTML padrão. 
 
Está associado ao objeto $(document). 
 
É o primeiro instante em que se torna possível o acesso a qualquer componente HTML da página. 
 Pode ser associado a uma DIV para execução ao final da carga da mesma. 
Respondido em 16/09/2019 22:17:35 
 
 
Explicação: 
O método ready é de uso exclusivo de $(document), sendo chamado ao final da carga da PÁGINA, como ocorre no tratamento do 
evento onLoad com uso de Java Script. 
 
 
 
 
 6a Questão 
 
 
Analise as seguintes afirmativas acerca da sintaxe JSON e assinale a opção correta. 
I - Valores numéricos devem ser colocados entre aspas. 
II - Valores nulos são representados por null. 
III - Vetores são definidos com o uso de chaves. 
 
 Todas as afirmativas são verdadeiras. 
 Apenas a afirmativa II é verdadeira. 
 
Apenas as afirmativas I e III são verdadeiras. 
 
Todas as afirmativas são falsas. 
 
Apenas as afirmativas II e III são verdadeiras. 
Respondido em 16/09/2019 22:17:37 
 
 
Explicação: 
A afirmativa I está incorreta porque os números não utilizam aspas, e a de número III está incorreta porque vetores utilizam 
colchetes. Quanto ao nulo, ele realmente é representado como null. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
5a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A5_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Ajax não é meramente uma tecnologia. É uma abordagem moderna para desenvolvimento de sites interativos. A abordagem de 
desenvolvimento tradicional tem semelhanças e diferenças em relação ao Ajax. Uma característica exclusiva de Ajax em relação à 
abordagem tradicional é que: 
 
 Usa javascript como linguagem para desenvolver código no lado do cliente. 
 
Executa as requisições através do protocolo HTTP. 
 
Usa (x)html / css para definir o aspecto visual da página. 
 
Representa os objetos no lado cliente com DOM. 
 Permite recuperação assíncrona de dados usando XMLHttpRequest. 
Respondido em 16/09/2019 21:30:51 
 
 
Explicação: 
O grande diferencial do AJAX é permitir um comportamento assícrono do cliente nas chamadas HTTP. 
 
 
 
 
 2a Questão 
 
 
Quantos erros podem ser observados no código XML seguinte? 
 
< contatos > 
 < contato nome="Ana" >< telefone >1111-1111< /telefone > 
 < telefone >1122-1122< /Telefone > 
 < /contato > 
 < contato nome=João > 
 < telefone >2211-1111< /telefone > 
 < telefone >2222-1122< /telefone > 
< /contatos > 
 
 1 
 
Nenhum 
 3 
 
4 
 
2 
Respondido em 16/09/2019 21:30:54 
 
 
Explicação: 
São três errros: atributo sem aspas, tag telefone abrindo com minúscula e fechando com maiúscula, e ausência de fechamento no 
segundo contato. 
 
 
 
 
 3a Questão 
 
 
De modo geral, o XML parser nada mais é do que: 
 
 Um método utilizado exclusivamente na validação de documento JavaScript. 
 
Uma técnica utilizada para a manipulação de metadados. 
 Um analisador de documentos XML, que tem como objetivo carregar ou criar um 
documento utilizando o JavaScript. 
 
Uma classe de documentos criados em JavaScript. 
 
Um objeto DOM implementado dentro do XML. 
Respondido em 16/09/2019 21:30:55 
 
 
Explicação: 
Com o uso de um XML Parser, é possível trabalhar os dados de um documento XML segundo uma visão em árvore. 
 
 
 
 
 4a Questão 
 
 
Um esquema define uma gramática para determinado domínio do problema, e a sintaxe XML permite duas formas para a definição 
de esquemas, que são: 
 
 XSLT e XSL-FO 
 DTD e XSD 
 
DTD e XSLT 
 
XSD e XSLT 
 
XSD e XSL-FO 
Respondido em 16/09/2019 21:30:57 
 
 
Explicação: 
As duas formas são: DTD, que apresenta sintaxe mais simples, mas que não é XML, e XSD, com uso de XML e apresentando uma 
sintaxe mais complexa. 
 
 
 
 
 5a Questão 
 
 
Assinale a alternativa INCORRETA acerca do AJAX. 
 
 Trabalha com uma função callback para a recepção dos dados. 
 
Embora o nome na tecnologia dê a impressão de aceitar apenas XML, outros formatos podem ser utilizados. 
 
Necessita instanciar um objeto do tipo XMLHttpRequest. 
 Permite apenas chamadas assíncronas ao servidor. 
 
É uma combinação de tecnologias cujo nome significa Http Asssíncrono, Java Script e XML. 
Respondido em 16/09/2019 21:30:59 
 
 
Explicação: 
O uso de AJAX permite chamadas síncronas ou assíncronas, mas dificilmente o modo síncrono é utilizado. 
 
 
 
 
 6a Questão 
 
 
Com relação ao XMLHttpRequest, o método para tratamento dos dados recebidos deve ser associado ao mesmo através do atributo: 
 
 onstatechange 
 onreadystatechange 
 
onresponsecomplete 
 
onready 
 
onresponse 
Respondido em 16/09/2019 21:31:01 
 
 
Explicação: 
O atributo onreadystatechange deve ser associado a uma function, e esta será chamada a cada alteração do estado do protocolo 
HTTP no processo de comunicação solicitado. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
5a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A5_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Assinale a alternativa INCORRETA acerca do AJAX. 
 
 Permite apenas chamadas assíncronas ao servidor. 
 
Embora o nome na tecnologia dê a impressão de aceitar apenas XML, outros formatos podem ser utilizados. 
 
Trabalha com uma função callback para a recepção dos dados. 
 
É uma combinação de tecnologias cujo nome significa Http Asssíncrono, Java Script e XML. 
 
Necessita instanciar um objeto do tipo XMLHttpRequest. 
Respondido em 16/09/2019 22:18:11 
 
 
Explicação: 
O uso de AJAX permite chamadas síncronas ou assíncronas, mas dificilmente o modo síncrono é utilizado. 
 
 
 
 
 2a Questão 
 
 
De modo geral, o XML parser nada mais é do que: 
 
 Um analisador de documentos XML, que tem como objetivo carregar ou criar um 
documento utilizando o JavaScript. 
 
Um método utilizado exclusivamente na validação de documento JavaScript. 
 
Uma técnica utilizada para a manipulação de metadados. 
 
Uma classe de documentos criados em JavaScript. 
 
Um objeto DOM implementado dentro do XML. 
Respondido em 16/09/2019 22:18:14 
 
 
Explicação: 
Com o uso de um XML Parser, é possível trabalhar os dados de um documento XML segundo uma visão em árvore. 
 
 
 
 
 3a Questão 
 
 
Quantos erros podem ser observados no código XML seguinte? 
 
< contatos > 
 < contato nome="Ana" > 
 < telefone >1111-1111< /telefone > 
 < telefone >1122-1122< /Telefone > 
 < /contato > 
 < contato nome=João > 
 < telefone >2211-1111< /telefone > 
 < telefone >2222-1122< /telefone > 
< /contatos > 
 
 3 
 
2 
 
1 
 
4 
 
Nenhum 
Respondido em 16/09/2019 22:18:17 
 
 
Explicação: 
São três errros: atributo sem aspas, tag telefone abrindo com minúscula e fechando com maiúscula, e ausência de fechamento no 
segundo contato. 
 
 
 
 
 4a Questão 
 
 
Ajax não é meramente uma tecnologia. É uma abordagem moderna para desenvolvimento de sites interativos. A abordagem de 
desenvolvimento tradicional tem semelhanças e diferenças em relação ao Ajax. Uma característica exclusiva de Ajax em relação à 
abordagem tradicional é que: 
 
 Usa javascript como linguagem para desenvolver código no lado do cliente. 
 
Usa (x)html / css para definir o aspecto visual da página. 
 
Representa os objetos no lado cliente com DOM. 
 Permite recuperação assíncrona de dados usando XMLHttpRequest. 
 
Executa as requisições através do protocolo HTTP. 
Respondido em 16/09/2019 22:18:19 
 
 
Explicação: 
O grande diferencial do AJAX é permitir um comportamento assícrono do cliente nas chamadas HTTP. 
 
 
 
 
 5a Questão 
 
 
Um esquema define uma gramática para determinado domínio do problema, e a sintaxe XML permite duas formas para a definição 
de esquemas, que são: 
 
 DTD e XSD 
 
XSD e XSLT 
 
XSLT e XSL-FO 
 
XSD e XSL-FO 
 
DTD e XSLT 
Respondido em 16/09/2019 22:18:22 
 
 
Explicação: 
As duas formas são: DTD, que apresenta sintaxe mais simples, mas que não é XML, e XSD, com uso de XML e apresentando uma 
sintaxe mais complexa. 
 
 
 
 
 6a Questão 
 
 
Com relação ao XMLHttpRequest, o método para tratamento dos dados recebidos deve ser associado ao mesmo através do atributo: 
 
 onready 
 
onstatechange 
 
onresponsecomplete 
 
onresponse 
 onreadystatechange 
Respondido em 16/09/2019 22:18:26 
 
 
Explicação: 
O atributo onreadystatechange deve ser associado a uma function, e esta será chamada a cada alteração do estado do protocolo 
HTTP no processo de comunicação solicitado. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
6a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A6_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Pode-se dizer que está INCORRETO sobre as tecnologias Servlet/JSP: 
 
 Não possuem o método main, pois estão sob controle dos contêineres. 
 
Para criar um Servlet é necessário criar uma classe derivada de HttpServlet. 
 
Toda página JSP é transformada em um Servlet. 
 
As páginas JSP são mais voltadas para o Designer, e os Servlets para o Programador. 
 JSP pode ser processado sem a utilização de um contêiner, e Servlet necessita de 
um contêiner. 
Respondido em 16/09/2019 21:31:24 
 
 
Explicação: 
Tanto páginas JSP quanto Servlets são executados no contêiner Web, sendo o JSP transformado em Servlet por este contêiner antes 
daexecução. 
 
 
 
 
 2a Questão 
 
 
__________________ é a tecnologia que gerencia a memória alocada para um programa, a fim de liberar objetos que não estão 
sendo utilizados. Complete a questão escolhendo um dos itens a sequir: 
 
 Java Virtual Machine 
 
Java Collector 
 Garbage Collector 
 
Java Clean 
 
Garbage Drunk 
Respondido em 16/09/2019 21:31:26 
 
 
Explicação: 
O coletor de lixo, ou Garbage Collector, elimina da memória os objetos que não podem mais ser referenciados. 
 
 
 
 
 3a Questão 
 
 
Preencha as lacunas e, em seguida, assinale a alternativa correta. 
Uma JSP consiste em uma combinação de ___________ e ___________ , que contêm o código executável, e a marcação estática, 
como ____________ ou ____________ . O código contido na JSP é identificado e executado pelo ___________ , e a página 
resultante é enviada para o cliente. 
 
 tags JSP / scriplets / HTML / XML / compilador 
 tags JSP / scriplets / HTML / XML / servidor 
 
tags JSP / HTML / Java / Java Script / compilador 
 
tags JSP / HTML / Java / XML / servidor 
 
tags JSP / HTML / Java / Java Script / servidor 
Respondido em 16/09/2019 21:31:28 
 
 
Explicação: 
Os arquivo JSP compreendem diretivas e trechos Java (Scriptlets) encapsulados em documentos XML, XHTML ou HTML, e são 
trasnformados em Servlet pelo container para a subsequente execução no servidor. 
 
 
 
 
 4a Questão 
 
 
Analise as afirmativas sobre Servlets: 
I - A tecnologia Java Servlet utiliza a plataforma Java para criar páginas web dinâmicas em aplicações independente de 
plataforma; 
II - Servlet é uma classe que estende (herda) de HttpServlet; 
III - É baseada na construção de classes e são executadas no cliente (navegador). 
 
 Todas as afirmativas estão corretas. 
 
Somente a III está correta. 
 
Somente a II está correta. 
 
Somente a I está correta. 
 Somente I e II estão corretas. 
Respondido em 16/09/2019 21:31:30 
 
 
Explicação: 
Os Servlets derivam de HttpServlet, sendo executados no servidor, e permitindo a criação de respostas dinâmicas para as chamadas 
HTTP. 
 
 
 
 
 5a Questão 
 
 
Em termos de herança, em determinadas situações é necessário acessar um método do pai a partir do método de mesmo nome do 
filho, quando tratamos de uma operação sobrescrita no processo de polimorfismo. Qual palavra reservada do Java permite este 
acesso? 
 
 this 
 
implements 
 super 
 
extends 
 
new 
Respondido em 16/09/2019 21:31:32 
 
 
Explicação: 
A palavra super é utilizada quando desejamos acessar um método existente no pai ou outra superclasse da linha hierárquica, 
podendo ser utilizado inclusive em construtores. 
 
 
 
 
 6a Questão 
 
 
Qual será a saída obtida pelo seguinte trecho com sintaxe Java? 
int a = 1, b=100; 
while( ++a < 5 ) 
 b = b / a; 
System.out.println(b); 
 
 4,17 
 
96 
 4 
 
12,5 
 
25 
Respondido em 16/09/2019 21:31:35 
 
 
Explicação: 
Primeira rodada: a = 2, b = 100 / 2 = 50. Segunda rodada: a = 3, b = 50 / 3 = 16. Terceira rodada: a= 4, b = 16 / 4 = 4 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
6a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A6_V2 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Pode-se dizer que está INCORRETO sobre as tecnologias Servlet/JSP: 
 
 JSP pode ser processado sem a utilização de um contêiner, e Servlet necessita de 
um contêiner. 
 
Para criar um Servlet é necessário criar uma classe derivada de HttpServlet. 
 
Toda página JSP é transformada em um Servlet. 
 
Não possuem o método main, pois estão sob controle dos contêineres. 
 
As páginas JSP são mais voltadas para o Designer, e os Servlets para o Programador. 
Respondido em 16/09/2019 22:19:46 
 
 
Explicação: 
Tanto páginas JSP quanto Servlets são executados no contêiner Web, sendo o JSP transformado em Servlet por este contêiner antes 
da execução. 
 
 
 
 
 2a Questão 
 
 
__________________ é a tecnologia que gerencia a memória alocada para um programa, a fim de liberar objetos que não estão 
sendo utilizados. Complete a questão escolhendo um dos itens a sequir: 
 
 Java Clean 
 
Java Virtual Machine 
 
Garbage Drunk 
 Garbage Collector 
 
Java Collector 
Respondido em 16/09/2019 22:19:49 
 
 
Explicação: 
O coletor de lixo, ou Garbage Collector, elimina da memória os objetos que não podem mais ser referenciados. 
 
 
 
 
 3a Questão 
 
 
Qual será a saída obtida pelo seguinte trecho com sintaxe Java? 
int a = 1, b=100; 
while( ++a < 5 ) 
 b = b / a; 
System.out.println(b); 
 
 12,5 
 
4,17 
 
96 
 
25 
 4 
Respondido em 16/09/2019 22:19:54 
 
 
Explicação: 
Primeira rodada: a = 2, b = 100 / 2 = 50. Segunda rodada: a = 3, b = 50 / 3 = 16. Terceira rodada: a= 4, b = 16 / 4 = 4 
 
 
 
 
 4a Questão 
 
 
Analise as afirmativas sobre Servlets: 
I - A tecnologia Java Servlet utiliza a plataforma Java para criar páginas web dinâmicas em aplicações independente de 
plataforma; 
II - Servlet é uma classe que estende (herda) de HttpServlet; 
III - É baseada na construção de classes e são executadas no cliente (navegador). 
 
 Somente a III está correta. 
 
Somente a I está correta. 
 
Somente a II está correta. 
 
Todas as afirmativas estão corretas. 
 Somente I e II estão corretas. 
Respondido em 17/09/2019 20:36:05 
 
 
Explicação: 
Os Servlets derivam de HttpServlet, sendo executados no servidor, e permitindo a criação de respostas dinâmicas para as chamadas 
HTTP. 
 
 
 
 
 5a Questão 
 
 
Em termos de herança, em determinadas situações é necessário acessar um método do pai a partir do método de mesmo nome do 
filho, quando tratamos de uma operação sobrescrita no processo de polimorfismo. Qual palavra reservada do Java permite este 
acesso? 
 
 extends 
 
new 
 super 
 
this 
 
implements 
Respondido em 16/09/2019 22:20:50 
 
 
Explicação: 
A palavra super é utilizada quando desejamos acessar um método existente no pai ou outra superclasse da linha hierárquica, 
podendo ser utilizado inclusive em construtores. 
 
 
 
 
 6a Questão 
 
 
Preencha as lacunas e, em seguida, assinale a alternativa correta. 
Uma JSP consiste em uma combinação de ___________ e ___________ , que contêm o código executável, e a marcação estática, 
como ____________ ou ____________ . O código contido na JSP é identificado e executado pelo ___________ , e a página 
resultante é enviada para o cliente. 
 
 tags JSP / HTML / Java / Java Script / servidor 
 
tags JSP / scriplets / HTML / XML / compilador 
 tags JSP / scriplets / HTML / XML / servidor 
 
tags JSP / HTML / Java / XML / servidor 
 
tags JSP / HTML / Java / Java Script / compilador 
Respondido em 16/09/2019 22:24:20 
 
 
Explicação: 
Os arquivo JSP compreendem diretivas e trechos Java (Scriptlets) encapsulados em documentos XML, XHTML ou HTML, e são 
trasnformados em Servlet pelo container para a subsequente execução no servidor. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
7a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A7_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
A linguagem Java apresenta como middleware padrãopara acesso a bancos de dados o JDBC, cuja utilização envolve vários passos, 
indo desde o registro do Driver até a recepção da consulta em ResultSets. Neste processo podem ocorrer duas exceções principais, 
no que se refere ao uso do JDBC, as quais são: 
 
 ClassNotFoundException e ServletException 
 
SQLException e ServletException 
 
ServletException e ArithmeticException 
 SQLException e ClassNotFoundException 
 
ClassNotFoundException e ArithmeticException 
Respondido em 16/09/2019 21:31:56 
 
 
Explicação: 
Pode ocorrer SQLException nas operações sobre o banco, e ClassNotFoundException ao instanciar o Driver. 
 
 
 
 
 2a Questão 
 
 
Java Database Connectivity(JDBC) consiste de um conjunto de classes e interfaces (API) escritas em Java que fazem o envio de 
instruções SQL para qualquer banco de dados relacional. Dentre as alternativas abaixo, assinale INCORRETA referente a Java 
Database Connectivity(JDBC): 
 
 O método close() da classe Connection fecha uma conexão com o banco de dados. 
 
É possivel acessar Banco de Dados que não possuem Driver JDBC próprio através da ponte JDBC-ODBC. 
 
Statement trabalha como um executor de comandos SQL. 
 
O PreparedStatement é um descendente de Statement que aceita parametrizações. 
 O executeQuery é um método da classe Connection para execução de uma 
consulta. 
Respondido em 16/09/2019 21:31:58 
 
 
Explicação: 
O método executeQuery pertence à classe Statement. 
 
 
 
 
 3a Questão 
 
 
Na sintaxe SQL, o operador que condiciona a seleção à existência do valor do campo em um determinado conjunto de valores de 
mesmo formato seria: 
 
 LIKE 
 IN 
 
BETWEEN 
 
ALL 
 
HAVING 
Respondido em 16/09/2019 21:32:00 
 
 
Explicação: 
Um exemplo seria: SELECT Id, CompanyName, City, Country FROM Supplier WHERE Country IN ('USA', 'UK', 'Japan') 
 
 
 
 
 4a Questão 
 
 
O middleware de acesso ao banco de dados utilizado pelo Java é denominado: 
 
 JDBC 
 
JNDI 
 
RPC 
 
RMI 
 
JMS 
Respondido em 16/09/2019 21:32:02 
 
 
Explicação: 
O middleware para acesso a banco de dados do Java é o JDBC (Java Database Conectivity) 
 
 
 
 
 5a Questão 
 
 
Existem diversos componentes no JDBC, e um deles permite a parametrização de queries. Indique qual é este componente. 
 
 DriverManager 
 
Connection 
 
Statement 
 
ResultSet 
 PreparedStatement 
Respondido em 16/09/2019 21:32:03 
 
 
Explicação: 
Um componente do tipo PreparedStatement é obtido a partir de uma chamada ao método prepareStatement de Connection, sendo 
utilizadas interrogações nos trechos do SQL que serão considerados como parâmetros. 
 
 
 
 
 6a Questão 
 
 
O uso de um DAO (Data Access Object) em um código tem a função de: 
 
 Impedir que uma classe tenha mais de um objeto instanciado. 
 
Prover uma camada de segurança para a aplicação. 
 
Gerenciar a geração de logs de acesso com API específica. 
 Prover uma interface para acesso a um banco de dados ou outro mecanismo de 
persistência. 
 
Encapsular o usuário e senha de acesso ao banco de dados relacional. 
Respondido em 16/09/2019 21:32:05 
 
 
Explicação: 
O padrão DAO concentra as chamadas SQL, evitando que este tipo de código se perpetue ao longo da aplicação. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
7a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A7_V2 17/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
A linguagem Java apresenta como middleware padrão para acesso a bancos de dados o JDBC, cuja utilização envolve vários passos, 
indo desde o registro do Driver até a recepção da consulta em ResultSets. Neste processo podem ocorrer duas exceções principais, 
no que se refere ao uso do JDBC, as quais são: 
 
 ServletException e ArithmeticException 
 SQLException e ClassNotFoundException 
 
SQLException e ServletException 
 
ClassNotFoundException e ServletException 
 
ClassNotFoundException e ArithmeticException 
Respondido em 17/09/2019 20:36:25 
 
 
Explicação: 
Pode ocorrer SQLException nas operações sobre o banco, e ClassNotFoundException ao instanciar o Driver. 
 
 
 
 
 2a Questão 
 
 
Java Database Connectivity(JDBC) consiste de um conjunto de classes e interfaces (API) escritas em Java que fazem o envio de 
instruções SQL para qualquer banco de dados relacional. Dentre as alternativas abaixo, assinale INCORRETA referente a Java 
Database Connectivity(JDBC): 
 
 É possivel acessar Banco de Dados que não possuem Driver JDBC próprio através da ponte JDBC-ODBC. 
 
O método close() da classe Connection fecha uma conexão com o banco de dados. 
 O executeQuery é um método da classe Connection para execução de uma 
consulta. 
 
Statement trabalha como um executor de comandos SQL. 
 
O PreparedStatement é um descendente de Statement que aceita parametrizações. 
Respondido em 17/09/2019 20:36:28 
 
 
Explicação: 
O método executeQuery pertence à classe Statement. 
 
 
 
 
 3a Questão 
 
 
Na sintaxe SQL, o operador que condiciona a seleção à existência do valor do campo em um determinado conjunto de valores de 
mesmo formato seria: 
 
 HAVING 
 
LIKE 
 
BETWEEN 
 IN 
 
ALL 
Respondido em 17/09/2019 20:36:29 
 
 
Explicação: 
Um exemplo seria: SELECT Id, CompanyName, City, Country FROM Supplier WHERE Country IN ('USA', 'UK', 'Japan') 
 
 
 
 
 4a Questão 
 
 
O middleware de acesso ao banco de dados utilizado pelo Java é denominado: 
 
 RPC 
 
JMS 
 
RMI 
 JDBC 
 
JNDI 
Respondido em 17/09/2019 20:36:31 
 
 
Explicação: 
O middleware para acesso a banco de dados do Java é o JDBC (Java Database Conectivity) 
 
 
 
 
 5a Questão 
 
 
Existem diversos componentes no JDBC, e um deles permite a parametrização de queries. Indique qual é este componente. 
 
 PreparedStatement 
 
Statement 
 
DriverManager 
 
ResultSet 
 
Connection 
Respondido em 17/09/2019 20:36:32 
 
 
Explicação: 
Um componente do tipo PreparedStatement é obtido a partir de uma chamada ao método prepareStatement de Connection, sendo 
utilizadas interrogações nos trechos do SQL que serão considerados como parâmetros. 
 
 
 
 
 6a Questão 
 
 
O uso de um DAO (Data Access Object) em um código tem a função de: 
 
 Impedir que uma classe tenha mais de um objeto instanciado. 
 
Encapsular o usuário e senha de acesso ao banco de dados relacional. 
 
Prover uma camada de segurança para a aplicação. 
 
Gerenciar a geração de logs de acesso com API específica. 
 Prover uma interface para acesso a um banco de dados ou outro mecanismo de 
persistência. 
Respondido em 17/09/2019 20:36:34 
 
 
Explicação: 
O padrão DAO concentra as chamadas SQL, evitando que este tipo de código se perpetue ao longo da aplicação. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
8a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A8_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Arquivo de configuração necessário para a definição das conexões no JPA: 
 
 persistence.xml 
 
context.xml 
 
manifest 
 
web.xml 
 
readme.txt 
Respondido em 16/09/2019 21:32:20 
 
 
Explicação: 
O arquivo persistence.xml guardaas configurações JDBC e definições de unidades de persistência. 
 
 
 
 
 2a Questão 
 
 
Entre os diferente tipos de EJBs, os MDBs são responsáveis pelo comportamento assíncrono baseado em mensagerias. Assinale a 
alternativa correta com relação aos MDBs. 
 
 São definidos pela anotação @Message. 
 
Precisam implementar a interface SessionListener. 
 Apresentam um único método para tratamento de mensagens denominado 
onMessage. 
 
Eles podem guardar informações de estado, como os Statefull Session Beans. 
 
Necessitam de interfaces @Local e @Remote. 
Respondido em 16/09/2019 21:32:23 
 
 
Explicação: 
Os MDBs são componentes EJB para tratamento assícrono de mensagens, através do método onMessage, lidando diretamente com 
as mensagerias via JMS, sem interfaces remotas ou locais, e sem a possibilidade de guardar estado. 
 
 
 
 
 3a Questão 
 
 
Complete as lacunas no trecho de código-fonte abaixo com os termos corretos: 
__________ emf = Persistence.createEntityManagerFactory("PU"); 
__________ em = emf.createEntityManager(); 
em.getTransaction().begin(); 
c = new Curso(3, "EE"); 
em.__________(c); 
em.getTransaction().commit(); 
 
 EntityManager; Command; insert 
 EntityManagerFactory; EntityManager; persist 
 
EntityFactory; EntityManager; save 
 
Database; Entity; put 
 
Connection; Statement; execute 
Respondido em 16/09/2019 21:32:25 
 
 
Explicação: 
Um elemento essencial no JPA é a classe EntityManager, responsável pelo manuseio das diversas entidades. Objetos desta classe 
são gerados a partir do EntityManagerFactory, e o método persist viabiliza a gravação de uma entidade no banco de dados. 
 
 
 
 
 4a Questão 
 
 
O tipo de bean utilizado para tratamento de regras de negócio síncronas, onde ocorre a necessidade de guardar informações entre 
chamadas sucessivas seria: 
 
 Stateful Session Bean 
 
Async Queued Bean 
 
Stateless Session Bean 
 
Entity Bean 
 
Message Driven Bean 
Respondido em 16/09/2019 21:32:27 
 
 
Explicação: 
Os componentes EJB do tipo Session são voltados para o tratamento de regras de negócio de forma síncrona, sendo o Stateless sem 
a guarda de estado e o Stateful com a guarda de estado. 
 
 
 
 
 5a Questão 
 
 
Os dois tipos de arquiteturas de envio e recepção que o JMS pode visualizar são: 
 
 Assinaturas e Tópicos 
 
Síncrona e Assíncrona 
 Filas e Tópicos 
 
Filas e Assinaturas 
 
Get e Post 
Respondido em 16/09/2019 21:32:29 
 
 
Explicação: 
As estruturas de mensagerias, ambas assíncronas, são Filas, com vários emissores e um consumidor sequencial, e Tópicos, com 
vários publicadores e vários assinantes. 
 
 
 
 
 6a Questão 
 
 
Os EJBs do tipo Session Bean podem ser divididos em três tipos, sendo que um deles permite a ocorrência de apenas uma instância 
por máquina virtual. Qual é este tipo? 
 
 Stateful 
 
Message Driven 
 
Stateless 
 Singleton 
 
Entity 
Respondido em 16/09/2019 21:32:31 
 
 
Explicação: 
Os EJBs do tipo Sngleton seguem o padrão de desenvolvimento de mesmo nome, ocorrendo apenas uma vez por JVM, e mantendo 
uma única referência, mesmo em ambientes clusterizados. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
8a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A8_V2 17/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Arquivo de configuração necessário para a definição das conexões no JPA: 
 
 persistence.xml 
 
manifest 
 
readme.txt 
 
context.xml 
 
web.xml 
Respondido em 17/09/2019 20:37:36 
 
 
Explicação: 
O arquivo persistence.xml guarda as configurações JDBC e definições de unidades de persistência. 
 
 
 
 
 2a Questão 
 
 
Entre os diferente tipos de EJBs, os MDBs são responsáveis pelo comportamento assíncrono baseado em mensagerias. Assinale a 
alternativa correta com relação aos MDBs. 
 
 Apresentam um único método para tratamento de mensagens denominado 
onMessage. 
 
Necessitam de interfaces @Local e @Remote. 
 
São definidos pela anotação @Message. 
 
Precisam implementar a interface SessionListener. 
 
Eles podem guardar informações de estado, como os Statefull Session Beans. 
Respondido em 17/09/2019 20:37:39 
 
 
Explicação: 
Os MDBs são componentes EJB para tratamento assícrono de mensagens, através do método onMessage, lidando diretamente com 
as mensagerias via JMS, sem interfaces remotas ou locais, e sem a possibilidade de guardar estado. 
 
 
 
 
 3a Questão 
 
 
Complete as lacunas no trecho de código-fonte abaixo com os termos corretos: 
__________ emf = Persistence.createEntityManagerFactory("PU"); 
__________ em = emf.createEntityManager(); 
em.getTransaction().begin(); 
c = new Curso(3, "EE"); 
em.__________(c); 
em.getTransaction().commit(); 
 
 Database; Entity; put 
 EntityManagerFactory; EntityManager; persist 
 
EntityFactory; EntityManager; save 
 
Connection; Statement; execute 
 
EntityManager; Command; insert 
Respondido em 17/09/2019 20:37:41 
 
 
Explicação: 
Um elemento essencial no JPA é a classe EntityManager, responsável pelo manuseio das diversas entidades. Objetos desta classe 
são gerados a partir do EntityManagerFactory, e o método persist viabiliza a gravação de uma entidade no banco de dados. 
 
 
 
 
 4a Questão 
 
 
O tipo de bean utilizado para tratamento de regras de negócio síncronas, onde ocorre a necessidade de guardar informações entre 
chamadas sucessivas seria: 
 
 Stateful Session Bean 
 
Message Driven Bean 
 
Entity Bean 
 
Stateless Session Bean 
 
Async Queued Bean 
Respondido em 17/09/2019 20:37:42 
 
 
Explicação: 
Os componentes EJB do tipo Session são voltados para o tratamento de regras de negócio de forma síncrona, sendo o Stateless sem 
a guarda de estado e o Stateful com a guarda de estado. 
 
 
 
 
 5a Questão 
 
 
Os dois tipos de arquiteturas de envio e recepção que o JMS pode visualizar são: 
 
 Assinaturas e Tópicos 
 Filas e Tópicos 
 
Síncrona e Assíncrona 
 
Get e Post 
 
Filas e Assinaturas 
Respondido em 17/09/2019 20:37:45 
 
 
Explicação: 
As estruturas de mensagerias, ambas assíncronas, são Filas, com vários emissores e um consumidor sequencial, e Tópicos, com 
vários publicadores e vários assinantes. 
 
 
 
 
 6a Questão 
 
 
Os EJBs do tipo Session Bean podem ser divididos em três tipos, sendo que um deles permite a ocorrência de apenas uma instância 
por máquina virtual. Qual é este tipo? 
 
 Entity 
 
Stateless 
 
Message Driven 
 
Stateful 
 Singleton 
Respondido em 17/09/2019 20:37:46 
 
 
Explicação: 
Os EJBs do tipo Sngleton seguem o padrão de desenvolvimento de mesmo nome, ocorrendo apenas uma vez por JVM, e mantendo 
uma única referência, mesmo em ambientes clusterizados. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
9a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A9_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
O protocolo HTTP não armazena estado, ou seja, os dados são perdidos na navegação entre as páginas. Para manter os dados 
referentes a uma conexão deve ser utilizado, no servidor, um objeto do tipo: 
 
 HttpSessionHttpServletResponse 
 
HttpRequest 
 
HttpResponse 
 
HttpServletRequest 
Respondido em 16/09/2019 21:32:44 
 
 
Explicação: 
Os atributos de sessão, referentes a uma dada conexão, podem ser manipulados com o uso de um objeto do tipo HttpSession. No 
Servlet ele é obtido a partir da requisição com a chamada ao método getSession, enquanto no JSP ele é um objeto implícito 
denominado session. 
 
 
 
 
 2a Questão 
 
 
A arquitetura MOM (Message Oriented Middleware) se torna muito importante no mundo corporativo ao permitir que sejam 
sequenciados diversos pedidos para atendimento de forma assíncrona, pois as solicitações são enviadas para filas de mensagens 
com a finalidade de serem processadas posteriormente, sem bloquear o cliente. Esta é um típico exemplo de qual padrão 
arquitetural? 
 
 PAC 
 
MVC 
 Event-Driven 
 
Broker 
 
Blackboard 
Respondido em 16/09/2019 21:32:47 
 
 
Explicação: 
Os sistemas de mensageria são baseados em Middleware Orientado a Mensagens (MOM), os quais são assíncronos e guiados por 
eventos, segundo o padrão Event-Driven. 
 
 
 
 
 3a Questão 
 
 
No ambiente JEE, a anotação PersistenceContext é utilizada para: 
 
 Acessar um EJB a partir de um Servlet. 
 
Definir um EJB do tipo Stateless. 
 
Efetuar a conexão com as filas de uma mensageria a patir do MDB. 
 
Definir uma interface remota para um EJB. 
 Instanciar um EntityManager a partir da unidade de persistência. 
Respondido em 16/09/2019 21:32:49 
 
 
Explicação: 
O uso da anotação PersistenceContext permite instanciar um EntityManager a partir do nome da unidade de persistência, conforme 
as definições efetuadas no arquivo persistence.xml. 
 
 
 
 
 4a Questão 
 
 
Com relação aos conceitos de arquitetura de aplicações, é correto afirmar que o MVC é um padrão 
 
 de arquitetura de aplicações que visa separar a "lógica da aplicação", a "interface 
do usuário" e a "persistência de dados". 
 
que garante que uma lógica de negócios possa ser acessada e visualizada por uma única interface. 
 
de objeto que executa uma operação quando ele recebe uma solicitação (mensagem) correspondente de um outro objeto. 
 
de operação dirigida para uma classe e não para um objeto individual. 
 
de desenvolvimento cuja finalidade é definir uma interface na mesma camada da "lógica da aplicação". 
Respondido em 16/09/2019 21:32:50 
 
 
Explicação: 
A arquitetura MVC divide o aplicativo em 3 camadas: Model (Persistência), Control (Regras de Negócio) e View (Interfaces). Não 
pode ocorrer contato entre a View e a Model. 
 
 
 
 
 5a Questão 
 
 
Em uma arquitetura MVC com uso de JSP, JPA e EJB, em que camadas estariam, respectivamente, os componentes de cada uma 
destas tecnologias? 
 
 Control, Model e View 
 
Model, Control e View 
 View, Model e Control 
 
View, Control e Model 
 
Model, View e Control 
Respondido em 16/09/2019 21:32:51 
 
 
Explicação: 
Os componentes Servlet e JSP irão compor a interface na camada View, enquanto o acesso ao banco será feito via JPA na camada 
Model, e as regras de negócio serão implementadas pelos EJBs na camada Control. 
 
 
 
 
 6a Questão 
 
 
O ferramental do NetBeans permite gerar de forma automática os EJBs responsáveis por invocar as diversas operações a serem 
efetuadas no banco a partir de entidades JPA. Ao fazer isto, ele segue um padrão de desenvolvimento denominado: 
 
 Intercept Filter 
 
Front Control 
 
Adapter 
 
Singleton 
 Session Facade 
Respondido em 16/09/2019 21:32:53 
 
 
Explicação: 
É utilizado o padrão Session Facade, onde os Stateless Session Beans servem de fachada para as operações de banco intermediadas 
pelo JPA. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
9a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A9_V2 17/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
No ambiente JEE, a anotação PersistenceContext é utilizada para: 
 
 Definir uma interface remota para um EJB. 
 
Efetuar a conexão com as filas de uma mensageria a patir do MDB. 
 Instanciar um EntityManager a partir da unidade de persistência. 
 
Definir um EJB do tipo Stateless. 
 
Acessar um EJB a partir de um Servlet. 
Respondido em 17/09/2019 20:38:26 
 
 
Explicação: 
O uso da anotação PersistenceContext permite instanciar um EntityManager a partir do nome da unidade de persistência, conforme 
as definições efetuadas no arquivo persistence.xml. 
 
 
 
 
 2a Questão 
 
 
Em uma arquitetura MVC com uso de JSP, JPA e EJB, em que camadas estariam, respectivamente, os componentes de cada uma 
destas tecnologias? 
 
 View, Control e Model 
 View, Model e Control 
 
Control, Model e View 
 
Model, View e Control 
 
Model, Control e View 
Respondido em 17/09/2019 20:38:28 
 
 
Explicação: 
Os componentes Servlet e JSP irão compor a interface na camada View, enquanto o acesso ao banco será feito via JPA na camada 
Model, e as regras de negócio serão implementadas pelos EJBs na camada Control. 
 
 
 
 
 3a Questão 
 
 
Com relação aos conceitos de arquitetura de aplicações, é correto afirmar que o MVC é um padrão 
 
 de operação dirigida para uma classe e não para um objeto individual. 
 
de objeto que executa uma operação quando ele recebe uma solicitação (mensagem) correspondente de um outro objeto. 
 
que garante que uma lógica de negócios possa ser acessada e visualizada por uma única interface. 
 de arquitetura de aplicações que visa separar a "lógica da aplicação", a "interface 
do usuário" e a "persistência de dados". 
 
de desenvolvimento cuja finalidade é definir uma interface na mesma camada da "lógica da aplicação". 
Respondido em 17/09/2019 20:38:29 
 
 
Explicação: 
A arquitetura MVC divide o aplicativo em 3 camadas: Model (Persistência), Control (Regras de Negócio) e View (Interfaces). Não 
pode ocorrer contato entre a View e a Model. 
 
 
 
 
 4a Questão 
 
 
O protocolo HTTP não armazena estado, ou seja, os dados são perdidos na navegação entre as páginas. Para manter os dados 
referentes a uma conexão deve ser utilizado, no servidor, um objeto do tipo: 
 
 HttpServletRequest 
 
HttpRequest 
 
HttpResponse 
 
HttpServletResponse 
 HttpSession 
Respondido em 17/09/2019 20:38:31 
 
 
Explicação: 
Os atributos de sessão, referentes a uma dada conexão, podem ser manipulados com o uso de um objeto do tipo HttpSession. No 
Servlet ele é obtido a partir da requisição com a chamada ao método getSession, enquanto no JSP ele é um objeto implícito 
denominado session. 
 
 
 
 
 5a Questão 
 
 
A arquitetura MOM (Message Oriented Middleware) se torna muito importante no mundo corporativo ao permitir que sejam 
sequenciados diversos pedidos para atendimento de forma assíncrona, pois as solicitações são enviadas para filas de mensagens 
com a finalidade de serem processadas posteriormente, sem bloquear o cliente. Esta é um típico exemplo de qual padrão 
arquitetural? 
 
 Blackboard 
 
PAC 
 
Broker 
 
MVC 
 Event-Driven 
Respondido em 17/09/2019 20:38:32 
 
 
Explicação: 
Os sistemas de mensageria são baseados em Middleware Orientado a Mensagens (MOM), os quais são assíncronos e guiados por 
eventos, segundo o padrão Event-Driven. 
 
 
 
 
 6a Questão 
 
 
O ferramental do NetBeans permite gerar de forma automática os EJBs responsáveis por invocar asdiversas operações a serem 
efetuadas no banco a partir de entidades JPA. Ao fazer isto, ele segue um padrão de desenvolvimento denominado: 
 
 Front Control 
 
Adapter 
 
Intercept Filter 
 Session Facade 
 
Singleton 
Respondido em 17/09/2019 20:38:34 
 
 
Explicação: 
É utilizado o padrão Session Facade, onde os Stateless Session Beans servem de fachada para as operações de banco intermediadas 
pelo JPA. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
10a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A10_V1 16/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
As anotações utilizadas para definir um Web Service SOAP, um método deste Web Service, e os parâmetros de chamada do método 
são, respectivamente: 
 
 WebService, Path e WebParam 
 
Service, WebMethod e Param 
 
Service, Path e PathParam 
 
WebServlet, WebMethod e Param 
 WebService, WebMethod e WebParam 
Respondido em 16/09/2019 21:33:06 
 
 
Explicação: 
Para o Java, um Web Service SOAP é uma classe comum que recebe a anotação @WebService. Esta classe pode ter diversos 
métodos e nem todos eles devem ser expostos, sendo necessário o uso de @WebMethod nos métodos expostos, bem como 
@WebParam nos parâmetros dos mesmos. 
 
 
 
 
 2a Questão 
 
 
Considere as afirmativas seguintes e marque a opção correta. 
I - Web Services do tipo SOAP permitem efetuar respostas em XML ou JSON. 
II - Enquanto o SOAP é mais voltado para o B2B, o REST é amplamente adotado no B2C. 
III - Web Services do tipo RESTful exploram os métodos do protocolo HTTP. 
IV - Com o uso da UDDI é possível gerar clientes para SOAP de forma automática. 
 
 Nehuma afirmativa é verdadeira. 
 
Apenas uma afirmativa é verdadeira. 
 
Todas as afirmativas são verdadeiras. 
 Duas afirmativas são verdadeiras. 
 
Três afirmativas são verdadeiras. 
Respondido em 16/09/2019 21:33:09 
 
 
Explicação: 
As opções I e IV são falsas, pois SOAP trabalha apenas com XML e o WSDL que viabiliza a geração automática no SOAP. 
 
 
 
 
 3a Questão 
 
 
Na criação de Web Services RESTful em Java, a definição do formato de saída de dados como JSON seria obtido com o uso da 
seguinte anotação: 
 
 Service(produces="JSON") 
 Produces(javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
Service(output=javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
Consumes(javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
PathParam(consumes="JSON") 
Respondido em 16/09/2019 21:33:10 
 
 
Explicação: 
A anotação Produces define o formato de dados utilizado na resposta, enquanto Consumes define o formato de dados que será 
aceito na requisição. Normalmente os dados são XML ou JSON. 
 
 
 
 
 4a Questão 
 
 
Nos Web Services do tipo RESTful, qual o método HTTP utilizado para efetuar consultas aos valores das entidades? 
 
 PUT 
 
DELETE 
 
HEAD 
 GET 
 
POST 
Respondido em 16/09/2019 21:33:12 
 
 
Explicação: 
A utilização dos métodos HTTP pelo REST é bastante padronizada, como na adoção de GET para "SELECT" , PUT para "INSERT" e 
POST para "UPDATE". 
 
 
 
 
 5a Questão 
 
 
Componente dos Web Services SOAP que viabiliza a criação automatizada de clientes nas mais diversas plataformas: 
 
 IDL 
 
UDDI 
 WSDL 
 
RPC 
 
COS Naming 
Respondido em 16/09/2019 21:33:14 
 
 
Explicação: 
Através do descritor de serviços do SOAP, no caso o WSDL, ambientes como Visual Studio (C#) e NetBeans (Java) conseguem gerar 
os stubs de comunicação e classes para o encapsulamento das chamadas aos serviços oferecidos, o que tira do programador a 
responsabilidade de implementar toda essa comunicação em rede. 
 
 
 
 
 6a Questão 
 
 
O que garante a plena interoperabilidade dos Web Services SOAP e transparência para os firewalls é: 
 
 A criação em linguagem Java. 
 
Executar chamadas estilo RPC. 
 
A criação em linguagem C#. 
 
Trabalhar com as bibliotecas Microsoft. 
 Uso de um protocolo baseado em XML. 
Respondido em 16/09/2019 21:33:17 
 
 
Explicação: 
A interoperabilidade é a comunicação entre plataformas distintas, e o uso de um protocolo texto, transparente aos firewalls, com a 
adoção de uma sintaxe interpretável em qualquer plataforma, no caso XML, acaba por garantir esta interoperabilidade. Não apenas 
o protocolo SOAP, mas também a descrição dos serviços (WSDL) e o registro (UDDI) são no formato XML, permitindo a 
interoperabilidade de Web Services SOAP em todos os níveis. 
 
 
 
 
 
 
 
PROGRAMAÇÃO CLIENTE SERVIDOR 
10a aula 
Lupa 
 
 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0780_EX_A10_V2 17/09/2019 
Aluno(a): 2019.3 EAD 
Disciplina: CCT0780 - PROGRAMAÇÃO CLIENTE SERVIDOR 
 
 
 
 1a Questão 
 
 
Na criação de Web Services RESTful em Java, a definição do formato de saída de dados como JSON seria obtido com o uso da 
seguinte anotação: 
 
 Consumes(javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
PathParam(consumes="JSON") 
 Produces(javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
Service(output=javax.ws.rs.core.MediaType.APPLICATION_JSON) 
 
Service(produces="JSON") 
Respondido em 17/09/2019 20:38:57 
 
 
Explicação: 
A anotação Produces define o formato de dados utilizado na resposta, enquanto Consumes define o formato de dados que será 
aceito na requisição. Normalmente os dados são XML ou JSON. 
 
 
 
 
 2a Questão 
 
 
O que garante a plena interoperabilidade dos Web Services SOAP e transparência para os firewalls é: 
 
 Trabalhar com as bibliotecas Microsoft. 
 
A criação em linguagem C#. 
 
Executar chamadas estilo RPC. 
 
A criação em linguagem Java. 
 Uso de um protocolo baseado em XML. 
Respondido em 17/09/2019 20:39:00 
 
 
Explicação: 
A interoperabilidade é a comunicação entre plataformas distintas, e o uso de um protocolo texto, transparente aos firewalls, com a 
adoção de uma sintaxe interpretável em qualquer plataforma, no caso XML, acaba por garantir esta interoperabilidade. Não apenas 
o protocolo SOAP, mas também a descrição dos serviços (WSDL) e o registro (UDDI) são no formato XML, permitindo a 
interoperabilidade de Web Services SOAP em todos os níveis. 
 
 
 
 
 3a Questão 
 
 
As anotações utilizadas para definir um Web Service SOAP, um método deste Web Service, e os parâmetros de chamada do método 
são, respectivamente: 
 
 Service, Path e PathParam 
 
WebServlet, WebMethod e Param 
 WebService, WebMethod e WebParam 
 
WebService, Path e WebParam 
 
Service, WebMethod e Param 
Respondido em 17/09/2019 20:39:02 
 
 
Explicação: 
Para o Java, um Web Service SOAP é uma classe comum que recebe a anotação @WebService. Esta classe pode ter diversos 
métodos e nem todos eles devem ser expostos, sendo necessário o uso de @WebMethod nos métodos expostos, bem como 
@WebParam nos parâmetros dos mesmos. 
 
 
 
 
 4a Questão 
 
 
Considere as afirmativas seguintes e marque a opção correta. 
I - Web Services do tipo SOAP permitem efetuar respostas em XML ou JSON. 
II - Enquanto o SOAP é mais voltado para o B2B, o REST é amplamente adotado no B2C. 
III - Web Services do tipo RESTful exploram os métodos do protocolo HTTP. 
IV - Com o uso da UDDI é possível gerar clientes para SOAP de forma automática. 
 
 Nehuma afirmativa é verdadeira. 
 Duas afirmativas são verdadeiras. 
 
Três afirmativas são verdadeiras.

Outros materiais