Você está na página 1de 32

CCT0779_A1_201907231471_V1

1. __________________ é 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:

Certo Garbage Collector

Explicação:

O coletor de lixo, ou Garbage  Collector, elimina da memória os objetos que não podem mais ser referenciados.

2. Considerando que as variáveis inteiras a e b foram previamente declaradas e inicializadas, qual das opções
seguintes apresentaria erro de compilação para o comando for?

Certo for(a=1; a = 10; a++)

Explicação:

No comando for, a seção de teste aceita apenas um valor booleano, e não inteiro, como ocorre em a=10. Lembrando
que a comparação é feita com ==.

3. Considerando o código seguinte, em Java, quais os valores de x,y e w, respectivamente?  

int a = 5, b = 32, c = 7;     

boolean x, y, w;   

x = (b > a) && (c > b);  

y = (b < c) || (a < b - c);   

w = (a + c < b) && !(c > a); 

Certo false, true e false

Explicação:

T && F -> F,  F || T -> T,  T && !T -> T && F -> F

4. Qual das IDEs abaixo não implementa código java?

Certo JDelphi

Explicação:

Jdelphi nem é uma IDE

5. Indique a opção que apresenta apenas operadores relacionais.

Certo Operadores >=, <, == e !=

Explicação:

Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=.

CCT0779_A1_201907231471_V2

1. __________________ é 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:

Certo Garbage Collector

Explicação:
O coletor de lixo, ou Garbage  Collector, elimina da memória os objetos que não podem mais ser referenciados.

2. Considerando que as variáveis inteiras a e b foram previamente declaradas e inicializadas, qual das opções
seguintes apresentaria erro de compilação para o comando for?

Certo for(a=1; a = 10; a++)

Explicação:

No comando for, a seção de teste aceita apenas um valor booleano, e não inteiro, como ocorre em a=10. Lembrando
que a comparação é feita com ==.

3. Considerando o código seguinte, em Java, quais os valores de x,y e w, respectivamente?  

int a = 5, b = 32, c = 7;     

boolean x, y, w;   

x = (b > a) && (c > b);  

y = (b < c) || (a < b - c);   

w = (a + c < b) && !(c > a); 

Certo false, true e false

Explicação:

T && F -> F,  F || T -> T,  T && !T -> T && F -> F

4. Qual das IDEs abaixo não implementa código java?

Certo JDelphi

Explicação:

Jdelphi nem é uma IDE

5. Indique a opção que apresenta apenas operadores relacionais.

Certo Operadores >=, <, == e !=

Explicação:

Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=.

CCT0779_A1_201907231471_V3

1. __________________ é 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:

Certo Garbage Collector

Explicação:

O coletor de lixo, ou Garbage  Collector, elimina da memória os objetos que não podem mais ser referenciados.

2. Considerando que as variáveis inteiras a e b foram previamente declaradas e inicializadas, qual das opções
seguintes apresentaria erro de compilação para o comando for?

Certo for(a=1; a = 10; a++)

Explicação:
No comando for, a seção de teste aceita apenas um valor booleano, e não inteiro, como ocorre em a=10. Lembrando
que a comparação é feita com ==.

3. Considerando o código seguinte, em Java, quais os valores de x,y e w, respectivamente?  

int a = 5, b = 32, c = 7;     

boolean x, y, w;   

x = (b > a) && (c > b);  

y = (b < c) || (a < b - c);   

w = (a + c < b) && !(c > a); 

Certo false, true e false

Explicação:

T && F -> F,  F || T -> T,  T && !T -> T && F -> F

4. Qual das IDEs abaixo não implementa código java?

Certo JDelphi

Explicação:

Jdelphi nem é uma IDE

5. Indique a opção que apresenta apenas operadores relacionais.

Certo Operadores >=, <, == e !=

Explicação:

Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=.

CCT0779_A1_201907231471_V4

1. __________________ é 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:

Errado Garbage Collector

Explicação:

O coletor de lixo, ou Garbage  Collector, elimina da memória os objetos que não podem mais ser referenciados.

2. Considerando que as variáveis inteiras a e b foram previamente declaradas e inicializadas, qual das opções
seguintes apresentaria erro de compilação para o comando for?

Certo for(a=1; a = 10; a++)

Explicação:

No comando for, a seção de teste aceita apenas um valor booleano, e não inteiro, como ocorre em a=10. Lembrando
que a comparação é feita com ==.

3. Considerando o código seguinte, em Java, quais os valores de x,y e w, respectivamente?  

int a = 5, b = 32, c = 7;     

boolean x, y, w;   

x = (b > a) && (c > b);  


y = (b < c) || (a < b - c);   

w = (a + c < b) && !(c > a); 

Certo false, true e false

Explicação:

T && F -> F,  F || T -> T,  T && !T -> T && F -> F

4. Qual das IDEs abaixo não implementa código java?

Certo JDelphi

Explicação:

Jdelphi nem é uma IDE

5. Indique a opção que apresenta apenas operadores relacionais.

Certo Operadores >=, <, == e !=

Explicação:

Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=.

DESENVOLVIMENTO DE SOFTWARE

CCT0779_A2_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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?

Certo super

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.

2. Quando existe a necessidade de reescrever um método herdado da classe pai, mantendo a mesma
assinatura que o método original, incluindo mesmo nome, mesmo tipo de dado de retorno e mesma lista de
parâmetros, estamos nos referindo a que técnica?

Certo Sobrescrita

Explicação:

O polimorfismo, ou sobrescrita, consiste na possibilidade de recriar um método herdado, mantendo sua assinatura,
o que é diferente de sobrecarga, onde são utilizadas múltiplas assinaturas para um mesmo método ou função.

3. Acerca de interfaces, na sintaxe Java, qual a informação correta?

Certo É um elemento totalmente abstrato, com um conjunto de assinaturas de métodos.

Explicação:
Uma interface é definida pela palavra interface e implementada com o uso de implements. Contém apenas
assinaturas de métodos que podem ser implementados por qualquer classe, diferentemente de classes abstratas,
que definem regras para uma família específica de classes descendentes.

4. O tipo de visibilidade que permite acesso aos recursos da príopria Classe e seus descendentes é:

Certo protected

Explicação:

protected

5. Qual a função do encapsulamento?

Certo Impedir o acesso direto a um atributo.

Explicação:

Tradicionalmente o encapsulamento é feito com o uso de getters e setters públicos para o controle do acesso aos
atributos privados.

6. Quando falamos das ações que um objeto pode realizar estamos nos referindo a:

Certo Métodos

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.

DESENVOLVIMENTO DE SOFTWARE

CCT0779_A2_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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?

Certo super

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.

2. Quando existe a necessidade de reescrever um método herdado da classe pai, mantendo a mesma
assinatura que o método original, incluindo mesmo nome, mesmo tipo de dado de retorno e mesma lista de
parâmetros, estamos nos referindo a que técnica?

Certo Sobrescrita

Explicação:

O polimorfismo, ou sobrescrita, consiste na possibilidade de recriar um método herdado, mantendo sua assinatura,
o que é diferente de sobrecarga, onde são utilizadas múltiplas assinaturas para um mesmo método ou função.

3. Acerca de interfaces, na sintaxe Java, qual a informação correta?

Certo É um elemento totalmente abstrato, com um conjunto de assinaturas de métodos.

Explicação:
Uma interface é definida pela palavra interface e implementada com o uso de implements. Contém apenas
assinaturas de métodos que podem ser implementados por qualquer classe, diferentemente de classes abstratas,
que definem regras para uma família específica de classes descendentes.

4. O tipo de visibilidade que permite acesso aos recursos da príopria Classe e seus descendentes é:

Certo protected

Explicação:

protected

5. Qual a função do encapsulamento?

Certo Impedir o acesso direto a um atributo.

Explicação:

Tradicionalmente o encapsulamento é feito com o uso de getters e setters públicos para o controle do acesso aos
atributos privados.

6. Quando falamos das ações que um objeto pode realizar estamos nos referindo a:

Certo Métodos

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.

DESENVOLVIMENTO DE SOFTWARE

CCT0779_A2_201907231471_V3

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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?

Certo super

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.

2. Quando existe a necessidade de reescrever um método herdado da classe pai, mantendo a mesma
assinatura que o método original, incluindo mesmo nome, mesmo tipo de dado de retorno e mesma lista de
parâmetros, estamos nos referindo a que técnica?

Certo Sobrescrita

Explicação:

O polimorfismo, ou sobrescrita, consiste na possibilidade de recriar um método herdado, mantendo sua assinatura,
o que é diferente de sobrecarga, onde são utilizadas múltiplas assinaturas para um mesmo método ou função.

3. Acerca de interfaces, na sintaxe Java, qual a informação correta?

Certo É um elemento totalmente abstrato, com um conjunto de assinaturas de métodos.

Explicação:
Uma interface é definida pela palavra interface e implementada com o uso de implements. Contém apenas
assinaturas de métodos que podem ser implementados por qualquer classe, diferentemente de classes abstratas,
que definem regras para uma família específica de classes descendentes.

4. O tipo de visibilidade que permite acesso aos recursos da príopria Classe e seus descendentes é:

Certo protected

Explicação:

protected

5. Qual a função do encapsulamento?

Certo Impedir o acesso direto a um atributo.

Explicação:

Tradicionalmente o encapsulamento é feito com o uso de getters e setters públicos para o controle do acesso aos
atributos privados.

6. Quando falamos das ações que um objeto pode realizar estamos nos referindo a:

Certo Métodos

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.

CCT0779_A3_201907231471_V1

1. Quando se cria um programa de computador em Java, há possibilidade de ocorrerem erros imprevistos


durante sua execução. Esses erros são conhecidos como exceções e podem ser provenientes de falhas na lógica ou
acesso a dispositivos ou arquivos externos. As exceções, portanto, ocorrem quando algo imprevisto acontece, e elas
podem ser provenientes de erros de lógica ou acesso a recursos que talvez não estejam disponíveis. Sobre o
tratamento de exceções em Java, assinale a afirmativa INCORRETA.

Certo As exceções em Java são fixas e não é possível definir novas exceções.

Explicação:

No Java é possível definir exceções de forma muito simples, bastando derivar da classe Exception ou de suas
descendentes.

2. Qual das opções abaixo não é uma descendente de Collection?

Certo HashList

Explicação:

HashList não é uma descente de Collection

3. Qual das palavras reservadas abaixo não fazem parte do tratamento de excessões?

Certo out

Explicação:

out
4. A linguagem Java traz algumas palavras específicas para o tratamento de execeções, definindo o controle de
fluxo para estas situações. Qual palavra é utilizada para definir um bloco de execução obrigatória, mesmo que na
ocorrência de exceção? 

Certo finally

Explicação:

O comando try (tentar) serve para definir um bloco protegido, sendo o fluxo de exceção desviado para catch, e
finally executado de forma obrigatória. O comando throw lança uma exceção, e o comando throws ecoa para o
chamador do método.

5. Acerca das anotações, é correto afirmar:

Certo São metadados anexados aos elementos de programação que podem ser recuperados através de
reflexividade computacional.

Explicação:

As anotações são metadados não serializáveis que podem ser anexados aos elementos de programação para o
reconhecimento posterior a partir de ferramentas externas. Não se trata de comentários simples, a definição é feita
com o uso de @interface e elas aceitam valores default.

6. A biblioteca Java apresentam diversos tipos de estruturas de coleção, através do framework Collections.
Uma destas estruturas funciona da mesma forma que uma tabela, com o relacionamento entre uma chave única e
um conjunto de dados. Qual é esta estrutura?

Certo HashMap

Explicação:

O uso de HashMap viabiliza a construção de coleções de pares chave-valor, onde as chaves não permitem
duplicidade.

CCT0779_A3_201907231471_V2

1. Qual das opções abaixo não é uma descendente de Collection?

Errado HashMap

Errado HashList

Explicação:

HashList não é uma descente de Collection

2. A biblioteca Java apresentam diversos tipos de estruturas de coleção, através do framework Collections.
Uma destas estruturas funciona da mesma forma que uma tabela, com o relacionamento entre uma chave única e
um conjunto de dados. Qual é esta estrutura?

Certo HashMap

Explicação:

O uso de HashMap viabiliza a construção de coleções de pares chave-valor, onde as chaves não permitem
duplicidade.

3. Acerca das anotações, é correto afirmar:

Certo São metadados anexados aos elementos de programação que podem ser recuperados através de
reflexividade computacional.

Explicação:
As anotações são metadados não serializáveis que podem ser anexados aos elementos de programação para o
reconhecimento posterior a partir de ferramentas externas. Não se trata de comentários simples, a definição é feita
com o uso de @interface e elas aceitam valores default.

4. A linguagem Java traz algumas palavras específicas para o tratamento de execeções, definindo o controle de
fluxo para estas situações. Qual palavra é utilizada para definir um bloco de execução obrigatória, mesmo que na
ocorrência de exceção? 

Certo finally

Explicação:

O comando try (tentar) serve para definir um bloco protegido, sendo o fluxo de exceção desviado para catch, e
finally executado de forma obrigatória. O comando throw lança uma exceção, e o comando throws ecoa para o
chamador do método.

5. Qual das palavras reservadas abaixo não fazem parte do tratamento de excessões?

Certo out

Explicação:

out

6. Quando se cria um programa de computador em Java, há possibilidade de ocorrerem erros imprevistos


durante sua execução. Esses erros são conhecidos como exceções e podem ser provenientes de falhas na lógica ou
acesso a dispositivos ou arquivos externos. As exceções, portanto, ocorrem quando algo imprevisto acontece, e elas
podem ser provenientes de erros de lógica ou acesso a recursos que talvez não estejam disponíveis. Sobre o
tratamento de exceções em Java, assinale a afirmativa INCORRETA.

Certo As exceções em Java são fixas e não é possível definir novas exceções.

Explicação:

No Java é possível definir exceções de forma muito simples, bastando derivar da classe Exception ou de suas
descendentes.

CCT0779_A4_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. As interfaces ouvintes servem para a captura de eventos no ambiente gráfico criado com o uso de Java. Qual
ouvinte deve ser utilizado para a captura do clique sobre um botão ou item de menu?

Certo ActionListener

Explicação:

Eventos de clique, como estes, são capturados com o uso de ActionListener e a implementação de seu único
método, o actionPerformed.

2. Qual gerenciador de layout Swing do Java possui essas 5 regiões de distribuição de elementos: north, south,
east, west, and center;

Certo Border Layout

Explicação:

Border
3. Qual componente gráfico deve ser utilizado para representar opções mutuamente exclusivas em uma janela
de cadastro?

Certo JRadioButton

Explicação:

O uso de JRadioButton permite a definição de opções mutuamente exclusivas, ou seja, se uma é marcada, as demais
são desmarcadas.

4. Entre os diversos elementos ouvintes disponibilizados pelas bibliotecas gráficas do Java, qual deles poderia
ser utilizado para acompanhar o movimento do mouse sobre o componente?

Certo MouseMotionListener

Explicação:

Para acompanhar o mouse deve ser utilizado MouseMotionListener, e a implementação de seus métodos
mouseMoved, para movimentos sem o uso do botão pressionado, e mouseDragged, para situações de tratamento
de arraste.

5. As duas bibliotecas para GUI oferecidas pelo JDK trabalham com o uso de conteineres, os quais agrupam
componentes visuais sobre eles com o uso de componentes do tipo Layout. Qual Layout trabalha com as posições
North, South, East, West e Center?

Certo BorderLayout

Explicação:

O correto seria BorderLayout, o qual aceita apenas um componente em cada uma das cinco posições, mas este
componente pode ser um painel, com outro layout, como para adicionar os botões de OK e Cancela na posição
South, bastando colocá-los em um Panel com FlowLayout.

6. Existem diversas bibliotecas para criação de interfaces gráficas com uso de Java, e duas delas já estão
presentes no JDK. Quais são elas?

Certo awt e swing

Explicação:

As bibliotecas seriam awt e swing. O pacote swt é voltado para criação de GUI, mas relacionado à IBM, e não ao JDK
padrão, e com relação ao jdbc, não se refere a janelas, mas à conexão e manuseio do banco de dados.

CCT0779_A4_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Existem diversas bibliotecas para criação de interfaces gráficas com uso de Java, e duas delas já estão
presentes no JDK. Quais são elas?

Certo awt e swing

Explicação:

As bibliotecas seriam awt e swing. O pacote swt é voltado para criação de GUI, mas relacionado à IBM, e não ao JDK
padrão, e com relação ao jdbc, não se refere a janelas, mas à conexão e manuseio do banco de dados.

2. Qual gerenciador de layout Swing do Java possui essas 5 regiões de distribuição de elementos: north, south,
east, west, and center;

Certo Border Layout
Explicação:

Border

3. Qual componente gráfico deve ser utilizado para representar opções mutuamente exclusivas em uma janela
de cadastro?

Certo JRadioButton

Explicação:

O uso de JRadioButton permite a definição de opções mutuamente exclusivas, ou seja, se uma é marcada, as demais
são desmarcadas.

4. Entre os diversos elementos ouvintes disponibilizados pelas bibliotecas gráficas do Java, qual deles poderia
ser utilizado para acompanhar o movimento do mouse sobre o componente?

Certo MouseMotionListener

Explicação:

Para acompanhar o mouse deve ser utilizado MouseMotionListener, e a implementação de seus métodos
mouseMoved, para movimentos sem o uso do botão pressionado, e mouseDragged, para situações de tratamento
de arraste.

5. As duas bibliotecas para GUI oferecidas pelo JDK trabalham com o uso de conteineres, os quais agrupam
componentes visuais sobre eles com o uso de componentes do tipo Layout. Qual Layout trabalha com as posições
North, South, East, West e Center?

Certo BorderLayout

Explicação:

O correto seria BorderLayout, o qual aceita apenas um componente em cada uma das cinco posições, mas este
componente pode ser um painel, com outro layout, como para adicionar os botões de OK e Cancela na posição
South, bastando colocá-los em um Panel com FlowLayout.

6. As interfaces ouvintes servem para a captura de eventos no ambiente gráfico criado com o uso de Java. Qual
ouvinte deve ser utilizado para a captura do clique sobre um botão ou item de menu?

Certo ActionListener

Explicação:

Eventos de clique, como estes, são capturados com o uso de ActionListener e a implementação de seu único
método, o actionPerformed.

CCT0779_A5_201907231471_V1

1. As tags responsáveis por quebra de linha, criação de parágrafo e criação de formulários são,
respectivamente:

Certo < br > < p > < form >

Explicação:

As tags seriam br (break), p (paragraph) e form. A tag h1 define uma fonte de título grande.

2. Escolha qual opção melhor define a sentença abaixo:

"Mecanismo para adicionar estilo a um documento web" :


Certo css

Explicação:

css

3. 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?

Certo onchange

Explicação:

O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança.

4. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de programação interpretada estruturada, de script em alto nível com tipagem dinâmica fraca e
multiparadigma, amplamente utilizada em páginas Web" :

Certo javascript

Explicação:

javascript

5. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de marcação utilizada na construção de páginas na Web" :

Certo html

Explicação:

HTML

6. Tag utilizada para definir o cabeçalho de uma página HTML:

Certo head

Explicação:

CCT0779_A5_201907231471_V2

1. 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?

Certo onchange

Explicação:

O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança.

2. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de marcação utilizada na construção de páginas na Web" :

Certo html

Explicação:

HTML

3. Escolha qual opção melhor define a sentença abaixo:

"Mecanismo para adicionar estilo a um documento web" :


Certo css

Explicação:

css

4. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de programação interpretada estruturada, de script em alto nível com tipagem dinâmica fraca e
multiparadigma, amplamente utilizada em páginas Web" :

Certo javascript

Explicação:

javascript

5. Tag utilizada para definir o cabeçalho de uma página HTML:

Certo head

Explicação:

6. As tags responsáveis por quebra de linha, criação de parágrafo e criação de formulários são,
respectivamente:

Certo < br > < p > < form >

Explicação:

As tags seriam br (break), p (paragraph) e form. A tag h1 define uma fonte de título grande.

CCT0779_A5_201907231471_V3

1. 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?

Certo onchange

Explicação:

O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança.

2. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de marcação utilizada na construção de páginas na Web" :

Certo html

Explicação:

HTML

3. Escolha qual opção melhor define a sentença abaixo:

"Mecanismo para adicionar estilo a um documento web" :

Certo css

Explicação:

css

4. Escolha qual opção melhor define a sentença abaixo:

"Linguagem de programação interpretada estruturada, de script em alto nível com tipagem dinâmica fraca e
multiparadigma, amplamente utilizada em páginas Web" :
Certo javascript

Explicação:

javascript

5. Tag utilizada para definir o cabeçalho de uma página HTML:

Certo head

Explicação:

6. As tags responsáveis por quebra de linha, criação de parágrafo e criação de formulários são,
respectivamente:

Certo < br > < p > < form >

Explicação:

As tags seriam br (break), p (paragraph) e form. A tag h1 define uma fonte de título grande.

CCT0779_A6_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Qual das opções abaixo não representa a afirmação abaixo:

"classe Java usada para estender as funcionalidades de um servidor."

Certo Servlet

Explicação:

Servlet

2. Classe utilizada em páginas JSP para controle de sessão:

Certo HttpSession

Explicação:

HttpSession

3. 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.

Certo tags JSP / scriplets / HTML / XML / servidor

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.

4. Qual das opções abaixo não representam frameworks para o ambiente Java Web:

Certo Netbeans

Explicação:

Netbeans é uma IDE não um framework


5. Pode-se dizer que está INCORRETO sobre as tecnologias Servlet/JSP:

Certo JSP pode ser processado sem a utilização de um contêiner, e Servlet necessita de um contêiner.

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.

6. Qual das opções abaixo não representa a afirmação abaixo:

"Tecnologia Java para a criação de páginas web com programação no servidor." :

Certo JSP

Explicação:

JSP

CCT0779_A6_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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.

Certo tags JSP / scriplets / HTML / XML / servidor

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.

2. Pode-se dizer que está INCORRETO sobre as tecnologias Servlet/JSP:

Certo JSP pode ser processado sem a utilização de um contêiner, e Servlet necessita de um contêiner.

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.

3. Classe utilizada em páginas JSP para controle de sessão:

Certo HttpSession

Explicação:

HttpSession

4. Qual das opções abaixo não representa a afirmação abaixo:

"classe Java usada para estender as funcionalidades de um servidor."

Certo Servlet

Explicação:

Servlet

5. Qual das opções abaixo não representa a afirmação abaixo:


"Tecnologia Java para a criação de páginas web com programação no servidor." :

Certo JSP

Explicação:

JSP

6. Qual das opções abaixo não representam frameworks para o ambiente Java Web:

Certo Netbeans

Explicação:

Netbeans é uma IDE não um framework

CCT0779_A6_201907231471_V3

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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.

Certo tags JSP / scriplets / HTML / XML / servidor

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.

2. Pode-se dizer que está INCORRETO sobre as tecnologias Servlet/JSP:

Certo JSP pode ser processado sem a utilização de um contêiner, e Servlet necessita de um contêiner.

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.

3. Classe utilizada em páginas JSP para controle de sessão:

Certo HttpSession

Explicação:

HttpSession

4. Qual das opções abaixo não representa a afirmação abaixo:

"classe Java usada para estender as funcionalidades de um servidor."

Certo Servlet

Explicação:

Servlet

5. Qual das opções abaixo não representa a afirmação abaixo:

"Tecnologia Java para a criação de páginas web com programação no servidor." :

Certo JSP
Explicação:

JSP

6. Qual das opções abaixo não representam frameworks para o ambiente Java Web:

Certo Netbeans

Explicação:

Netbeans é uma IDE não um framework

CCT0779_A7_201907231471_V1

1. Os comandos em sql, CREATE, ALTER, DROP, RENAME e TRUNCATE, são comandos do tipo:

Certo DDL

Explicação:

A DDL, Data Definition Language ou LInguagem de Definição de Dados, apesar do nome não interage com os dados e
sim com os objetos do banco.

São comandos desse tipo o CREATE, o ALTER e o DROP.

2. 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:

Certo SQLException e ClassNotFoundException

Explicação:

Pode ocorrer SQLException nas operações sobre o banco, e ClassNotFoundException ao instanciar o Driver.

3. 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):

Certo O executeQuery é um método da classe Connection para execução de uma consulta.

Explicação:

O método executeQuery pertence à classe Statement.

4. Supondo que você utilize um Managed Bean que funcione como DAO, através do nome "clienteDAO", e que
o mesmo tenha um método "findAll" sem parâmetros para o retorno de toda a base de clientes, como seria definido
um componente DataTable alimentado pelo mesmo?

Certo < h:dataTable value="#{clienteDAO.findAll()}" var="c" >

Explicação:

Na sintaxe do DataTable, o atributo value deverá receber a lista de origem, fornecida a partir de clienteDAO.findAll,
e o atributo var nomeia a variável que percorre o conjunto, assumindo os valores de cada entidade
sequencialmente.

5. Os comandos em sql, SELECT, UPDATE, INSERT  são comandos do tipo:

Certo DML

Explicação:
DML, Data Manipulation Language, ou Linguagem de Manipulação de Dados. 

6. Qual o banco de dados que vem como padrão do NetBeans, sendo totalmente construído em Java?

Certo Derby

Explicação:

Por padrão, o NetBeans traz suporte ao banco Derby, o qual é totalmente construído em Java e não depende da
instalação de um servidor proprietário.

7. Baseado na linha de comando abaixo, marque qual deve ser o comando seguinte:    

Statement st = Conexao.getConection().createStatement();

Certo ResultSet rs = st.executeQuery("select * from ALUNOS");

Explicação:

Após criar o executor de SQL (Statement), o próximo passo pode ser uma consulta, efetuada a partir do método
executeQuery, com o retorno do resultado na forma de um ResultSet.

8. Qual das opções abaixo não representa a afirmação abaixo:

"Conjunto de classes e interfaces (API) escritas em Java que fazem o envio de instruções SQL para qualquer
banco de dados relacional"

Certo JDBC

Explicação:

JDBC

CCT0779_A7_201907231471_V2

1. Os comandos em sql, SELECT, UPDATE, INSERT  são comandos do tipo:

Certo DML

Explicação:

DML, Data Manipulation Language, ou Linguagem de Manipulação de Dados. 

2. Qual o banco de dados que vem como padrão do NetBeans, sendo totalmente construído em Java?

Certo Derby

Explicação:

Por padrão, o NetBeans traz suporte ao banco Derby, o qual é totalmente construído em Java e não depende da
instalação de um servidor proprietário.

3. Supondo que você utilize um Managed Bean que funcione como DAO, através do nome "clienteDAO", e que
o mesmo tenha um método "findAll" sem parâmetros para o retorno de toda a base de clientes, como seria definido
um componente DataTable alimentado pelo mesmo?

Certo < h:dataTable value="#{clienteDAO.findAll()}" var="c" >

Explicação:

Na sintaxe do DataTable, o atributo value deverá receber a lista de origem, fornecida a partir de clienteDAO.findAll,
e o atributo var nomeia a variável que percorre o conjunto, assumindo os valores de cada entidade
sequencialmente.
4. 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):

Certo O executeQuery é um método da classe Connection para execução de uma consulta.

Explicação:

O método executeQuery pertence à classe Statement.

5. Qual das opções abaixo não representa a afirmação abaixo:

"Conjunto de classes e interfaces (API) escritas em Java que fazem o envio de instruções SQL para qualquer
banco de dados relacional"

Certo JDBC

Explicação:

JDBC

6. 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:

Certo SQLException e ClassNotFoundException

Explicação:

Pode ocorrer SQLException nas operações sobre o banco, e ClassNotFoundException ao instanciar o Driver.

7. Baseado na linha de comando abaixo, marque qual deve ser o comando seguinte:    

Statement st = Conexao.getConection().createStatement();

Certo ResultSet rs = st.executeQuery("select * from ALUNOS");

Explicação:

Após criar o executor de SQL (Statement), o próximo passo pode ser uma consulta, efetuada a partir do método
executeQuery, com o retorno do resultado na forma de um ResultSet.

8. Os comandos em sql, CREATE, ALTER, DROP, RENAME e TRUNCATE, são comandos do tipo:

Certo DDL

Explicação:

A DDL, Data Definition Language ou LInguagem de Definição de Dados, apesar do nome não interage com os dados e
sim com os objetos do banco.

São comandos desse tipo o CREATE, o ALTER e o DROP.

CCT0779_A7_201907231471_V3

1. Os comandos em sql, SELECT, UPDATE, INSERT  são comandos do tipo:

Certo DML

Explicação:

DML, Data Manipulation Language, ou Linguagem de Manipulação de Dados. 

2. Qual o banco de dados que vem como padrão do NetBeans, sendo totalmente construído em Java?

Certo Derby
Explicação:

Por padrão, o NetBeans traz suporte ao banco Derby, o qual é totalmente construído em Java e não depende da
instalação de um servidor proprietário.

3. Supondo que você utilize um Managed Bean que funcione como DAO, através do nome "clienteDAO", e que
o mesmo tenha um método "findAll" sem parâmetros para o retorno de toda a base de clientes, como seria definido
um componente DataTable alimentado pelo mesmo?

Certo < h:dataTable value="#{clienteDAO.findAll()}" var="c" >

Explicação:

Na sintaxe do DataTable, o atributo value deverá receber a lista de origem, fornecida a partir de clienteDAO.findAll,
e o atributo var nomeia a variável que percorre o conjunto, assumindo os valores de cada entidade
sequencialmente.

4. 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):

Certo O executeQuery é um método da classe Connection para execução de uma consulta.

Explicação:

O método executeQuery pertence à classe Statement.

5. 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:

6. Qual das opções abaixo não representa a afirmação abaixo:

"Conjunto de classes e interfaces (API) escritas em Java que fazem o envio de instruções SQL para qualquer
banco de dados relacional"

Certo JDBC

Explicação:

JDBC

7. Baseado na linha de comando abaixo, marque qual deve ser o comando seguinte:    

Statement st = Conexao.getConection().createStatement();

Certo ResultSet rs = st.executeQuery("select * from ALUNOS");

Explicação:

Após criar o executor de SQL (Statement), o próximo passo pode ser uma consulta, efetuada a partir do método
executeQuery, com o retorno do resultado na forma de um ResultSet.

8. Os comandos em sql, CREATE, ALTER, DROP, RENAME e TRUNCATE, são comandos do tipo:

Certo DDL

Explicação:

A DDL, Data Definition Language ou LInguagem de Definição de Dados, apesar do nome não interage com os dados e
sim com os objetos do banco.

São comandos desse tipo o CREATE, o ALTER e o DROP.


CCT0779_A8_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Em uma arquitetura MVC com uso de JSF, qual seria o único tipo de componente que poderia instanciar um
objeto do padrão DAO?

Certo Controlador

Explicação:

Apenas os controladores, presentes na camada Control, podem instanciar elementos do tipo DAO, pertencentes à
camada Model, e solicitar que estes últimos efetuem operações sobre o banco de dados. As entidades são o
elemento de transporte, transitando entre as camadas, e os componentes JSF pertencem à camada View.

2. Marque a opção que contém apenas estilos arquiteturais no modelo Mud to Structure:

Certo Camadas, Pipes/Filters e Blackboard

Explicação:

O modelo Mud to Structure pode ser observado nos estilos Camadas, Pipes/Filters e Blackboard. O estilo Broker
segue o modelo de Sistemas distribuídos, enquanto PAC e MVC seguem o modelo de Sistemas Interativos, e,
Microkernel e Reflexiva seguem o modelo de Sistemas Adaptáveis. 

3. 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?

Certo Event-Driven

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.

4. Definição da seguna camada MVC:

Certo View

Explicação:

View, de Model-View-Controller

5. Definição da terceira camada MVC:

Certo Controller

Explicação:

Controller, de Model-View-Controller

6. Marque a opção que apresenta apenas estilos arquiteturais no modelo de Sistemas Interativos.

Certo MVC e PAC

Explicação:
O modelo Mud to Structure pode ser observado nos estilos Camadas, Pipes/Filters e Blackboard. O estilo Broker
segue o modelo de Sistemas distribuídos, enquanto PAC e MVC seguem o modelo de Sistemas Interativos, e,
Microkernel e Reflexiva seguem o modelo de Sistemas Adaptáveis. 

7. Definição da primeira camada MVC:

Certo Model

Explicação:

Model, de Model-View-Controller

8. Qual a fase do ciclo de vida do JSF onde a árvore de componentes é montada ao nível do servidor?

Certo Restore View

Explicação:

A fase inicial do ciclo de vida é a Restore View, onde é recebida a requisição HTTP e montada a árvore de objetos em
memória.

CCT0779_A8_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Qual componente do JSF assume o papel de Front Control?

Certo FacesServlet

Explicação:

Segundo o mapeamento feito no web.xml, toda chamada a páginas JSF será direcionada para o FacesServlet,
fazendo com que o mesmo assuma o papel de Front Control na arquitetura do JSF.

2. Marque a opção que contém apenas estilos arquiteturais no modelo Mud to Structure:

Certo Camadas, Pipes/Filters e Blackboard

Explicação:

O modelo Mud to Structure pode ser observado nos estilos Camadas, Pipes/Filters e Blackboard. O estilo Broker
segue o modelo de Sistemas distribuídos, enquanto PAC e MVC seguem o modelo de Sistemas Interativos, e,
Microkernel e Reflexiva seguem o modelo de Sistemas Adaptáveis. 

3. 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?

Certo Event-Driven

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.

4. Definição da seguna camada MVC:

Certo View

Explicação:

View, de Model-View-Controller
5. Definição da terceira camada MVC:

Certo Controller

Explicação:

Controller, de Model-View-Controller

6. Marque a opção que apresenta apenas estilos arquiteturais no modelo de Sistemas Interativos.

Certo MVC e PAC

Explicação:

O modelo Mud to Structure pode ser observado nos estilos Camadas, Pipes/Filters e Blackboard. O estilo Broker
segue o modelo de Sistemas distribuídos, enquanto PAC e MVC seguem o modelo de Sistemas Interativos, e,
Microkernel e Reflexiva seguem o modelo de Sistemas Adaptáveis. 

7. Definição da primeira camada MVC:

Certo Model

Explicação:

Model, de Model-View-Controller

8. Qual a fase do ciclo de vida do JSF onde a árvore de componentes é montada ao nível do servidor?

Certo Restore View

Explicação:

A fase inicial do ciclo de vida é a Restore View, onde é recebida a requisição HTTP e montada a árvore de objetos em
memória.

DESENVOLVIMENTO DE SOFTWARE

CCT0779_A9_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. 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.

Certo Apresentam um único método para tratamento de mensagens denominado onMessage.

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.

2. Qual tipo de EJB foi substituido pelo JPA no JEE5?

Certo Entity Bean

Explicação:

No J2EE, existia um EJB para persistência denominado EntityBean, que seguia o padrão Active Record, o qual, no
entanto, se mostrou inferior a alguns frameworks de persistência em termos de eficiência, sendo substituído pelo
JPA no JEE5.
3. Os dois tipos de arquiteturas de envio e recepção que o JMS pode visualizar são:

Certo Filas e Tópicos

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.

4. 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:

Certo Stateful Session Bean

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.

5. Suponha que você precisa implementar uma funcionalidade de um novo sistema de Telemarketing que
envolve o controle da quantidade de chamadas tratadas pelo operador enquanto estiver logado. Qual o tipo de EJB
seria mais apropriado para acumular a quantidade de chamadas? 

Certo Stateful Session Bean

Explicação:

Por se tratar de uma chamada a um método de negócios síncrona, temos a clara utilização de um Session Bean, e
como deve guardar o estado, no caso a quantidade e chamdas, precisamos de um Stateful Session Bean.

6. Arquivo de configuração necessário para a definição das conexões no JPA:

Certo persistence.xml

Explicação:

O arquivo persistence.xml guarda as configurações JDBC e definições de unidades de persistência.

7. 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();

Certo EntityManagerFactory; EntityManager; persist

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.

8. 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?

Certo Singleton
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.

DESENVOLVIMENTO DE SOFTWARE

CCT0779_A9_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Assinale a alternativa INCORRETA acerca do JPA:

Certo Com a adoção do JPA eliminamos a necessidade do JDBC.

Explicação:

Com o JPA não eliminamos o uso de JDBC, pois o que é feito é a geração dos comandos SQL de forma automatizada a
partir das requisições efetuadas pelo EntityManager, sempre utilizando as informações transmitidas pelas classes
anotadas.

2. Qual tipo de EJB foi substituido pelo JPA no JEE5?

Certo Entity Bean

Explicação:

No J2EE, existia um EJB para persistência denominado EntityBean, que seguia o padrão Active Record, o qual, no
entanto, se mostrou inferior a alguns frameworks de persistência em termos de eficiência, sendo substituído pelo
JPA no JEE5.

3. Os dois tipos de arquiteturas de envio e recepção que o JMS pode visualizar são:

Certo Filas e Tópicos

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.

4. 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:

Certo Stateful Session Bean

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.

5. Suponha que você precisa implementar uma funcionalidade de um novo sistema de Telemarketing que
envolve o controle da quantidade de chamadas tratadas pelo operador enquanto estiver logado. Qual o tipo de EJB
seria mais apropriado para acumular a quantidade de chamadas? 

Certo Stateful Session Bean

Explicação:

Por se tratar de uma chamada a um método de negócios síncrona, temos a clara utilização de um Session Bean, e
como deve guardar o estado, no caso a quantidade e chamdas, precisamos de um Stateful Session Bean.

6. Arquivo de configuração necessário para a definição das conexões no JPA:


Certo persistence.xml

Explicação:

O arquivo persistence.xml guarda as configurações JDBC e definições de unidades de persistência.

7. 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.

Certo Apresentam um único método para tratamento de mensagens denominado onMessage.

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.

8. 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?

Certo Singleton

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.

CCT0779_A10_201907231471_V1

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Em uma arquitetura MVC, com uso de JSF e EJB, temos um componente para comunicar com o Session EJB,
denominado ProdutoControlMB, anotado com ApplicationScoped, e outro para encapsular a entidade denominado
ProdutoMB, anotado com SessionScoped. Segundo esta configuração, podemos afirmar que:

Certo Temos uma instânica de ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada
usuário logado.

Explicação:

Nesta arquitetura temos uma camada Model com o JPA e as entidades, seguido da camada Control com os Session
EJBs, funcionando de fachada para a Model. Em seguida temos a camada View com uso de JSF, onde encapsulamos a
chamada aos EJBs através de ProdutoControlMB e as entidades através de ProdutoMB, de forma a compatibilizar
com as necessidades do JSF para utilização. Com o uso das anotações de escopo citadas, temos uma instânica de
ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada usuário logado.

2. Qual anotação deve ser utilizada para efetuar o acesso a um Managed Bean a partir de outro?

Certo Inject

Explicação:

Enquanto @Named permite definir o nome do Managed Bean, com @Inject podemos acessá-lo através do nome
definido anteriormente.

3. Na criação de um Managed Bean, a utilização da anotação SessionScoped serve para:

Certo Manter o valor do Managed Bean entre chamadas sucessivas.

Explicação:
Ao utilizar ScopedSession estamos definindo o escopo de sessão para o Managed Bean, o que manterá seus valores
carregados entre chamadas sucessivas.

Um exemplo é apresentado a seguir.

@Named(value = "produtoMB")

@SessionScoped

public class ProdutoMB extends Produto{

4. Ao solicitar a criação de entidades JPA a partir do banco de dados, no NetBeans, é solicitado que se defina
um pool de conexões para o acesso a este banco. Qual tecnologia Java é utilizada para o registro e localização deste
pool?

Certo JNDI

Explicação:

O serviço de nomes e diretórios do Java é denominado JNDI, e serve para o registro e localização de objetos como
pools de conexão e filas de mensagerias, entre diversos outros.

5. Em uma arquitetura MVC com uso de JSF, JPA e EJB, em que camadas estariam, respectivamente, os
componentes de cada uma destas tecnologias?

Certo View, Model e Control

Explicação:

Os componentes JSF 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.

6. No ambiente JEE, a anotação PersistenceContext é utilizada para:

Certo Instanciar um EntityManager a partir da unidade de persistência.

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.

7. Ao gerar diversas camadas de um aplicativo corporativo, com uso dos processos de automação do NetBeans,
você notou que os Session Beans vinham com a anotação PersistenceContext sobre alguns atributos. Qual a função
desta anotação?

Certo Instanciar o EntityManager, efetuando a relação com a unidade de persistência correta.

Explicação:

A anotação citada serve para instanciar o EntityManager, efetuando a relação com a unidade de persistência correta,
como no exemplo seguinte.

@PersistenceContext(unitName = "ExemploCompleto-ejbPU")

private EntityManager em;

Note que a automatização do NetBeans gera uma classe abstrata de base, agrupando as operações de banco, e
concretiza estas operações, baseado em Generics, no descendente do tipo Session EJB, onde é também concretizada
também a relação com o banco de dados, instanciando o EntityManager com a anotação do exemplo.

8. 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:
Certo Session Facade

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.

CCT0779_A10_201907231471_V2

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Assinale a alternativa correta.

Certo As transações nos EJBs são controladas através do JTA (Java Transaction API).

Explicação:

Na arquitetura MVC, JSF estaria na View, EJB na Control e JPA na Model. Nenhum componente da camada View deve
acessar a camada Model sem passar pela Control, e nenhuma camada conhece os componentes de uma camada
superior, ou seja, a Model não conhece a Control e a Control não conhece a View. A anotação @Id serve para
identificr o campo chave de uma entidade JPA, e não é possível determinar o EJB que será acessado no pool.

2. Na criação de um Managed Bean, a utilização da anotação SessionScoped serve para:

Certo Manter o valor do Managed Bean entre chamadas sucessivas.

Explicação:

Ao utilizar ScopedSession estamos definindo o escopo de sessão para o Managed Bean, o que manterá seus valores
carregados entre chamadas sucessivas.

Um exemplo é apresentado a seguir.

@Named(value = "produtoMB")

@SessionScoped

public class ProdutoMB extends Produto{

3. Ao solicitar a criação de entidades JPA a partir do banco de dados, no NetBeans, é solicitado que se defina
um pool de conexões para o acesso a este banco. Qual tecnologia Java é utilizada para o registro e localização deste
pool?

Certo JNDI

Explicação:

O serviço de nomes e diretórios do Java é denominado JNDI, e serve para o registro e localização de objetos como
pools de conexão e filas de mensagerias, entre diversos outros.

4. Em uma arquitetura MVC com uso de JSF, JPA e EJB, em que camadas estariam, respectivamente, os
componentes de cada uma destas tecnologias?

Certo View, Model e Control

Explicação:

Os componentes JSF 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.

5. No ambiente JEE, a anotação PersistenceContext é utilizada para:

Certo Instanciar um EntityManager a partir da unidade de persistência.


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.

6. Ao gerar diversas camadas de um aplicativo corporativo, com uso dos processos de automação do NetBeans,
você notou que os Session Beans vinham com a anotação PersistenceContext sobre alguns atributos. Qual a função
desta anotação?

Certo Instanciar o EntityManager, efetuando a relação com a unidade de persistência correta.

Explicação:

A anotação citada serve para instanciar o EntityManager, efetuando a relação com a unidade de persistência correta,
como no exemplo seguinte.

@PersistenceContext(unitName = "ExemploCompleto-ejbPU")

private EntityManager em;

Note que a automatização do NetBeans gera uma classe abstrata de base, agrupando as operações de banco, e
concretiza estas operações, baseado em Generics, no descendente do tipo Session EJB, onde é também concretizada
também a relação com o banco de dados, instanciando o EntityManager com a anotação do exemplo.

7. 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:

Certo Session Facade

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.

8. Qual anotação deve ser utilizada para efetuar o acesso a um Managed Bean a partir de outro?

Certo Inject

Explicação:

Enquanto @Named permite definir o nome do Managed Bean, com @Inject podemos acessá-lo através do nome
definido anteriormente.

CCT0779_A10_201907231471_V3

Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para
se familiarizar com este modelo de questões que será usado na sua AV e AVS.

1. Em uma arquitetura MVC, com uso de JSF e EJB, temos um componente para comunicar com o Session EJB,
denominado ProdutoControlMB, anotado com ApplicationScoped, e outro para encapsular a entidade denominado
ProdutoMB, anotado com SessionScoped. Segundo esta configuração, podemos afirmar que:

Certo Temos uma instânica de ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada
usuário logado.

Explicação:

Nesta arquitetura temos uma camada Model com o JPA e as entidades, seguido da camada Control com os Session
EJBs, funcionando de fachada para a Model. Em seguida temos a camada View com uso de JSF, onde encapsulamos a
chamada aos EJBs através de ProdutoControlMB e as entidades através de ProdutoMB, de forma a compatibilizar
com as necessidades do JSF para utilização. Com o uso das anotações de escopo citadas, temos uma instânica de
ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada usuário logado.
2. Qual anotação deve ser utilizada para efetuar o acesso a um Managed Bean a partir de outro?

Certo Inject

Explicação:

Enquanto @Named permite definir o nome do Managed Bean, com @Inject podemos acessá-lo através do nome
definido anteriormente.

3. Na criação de um Managed Bean, a utilização da anotação SessionScoped serve para:

Certo Manter o valor do Managed Bean entre chamadas sucessivas.

Explicação:

Ao utilizar ScopedSession estamos definindo o escopo de sessão para o Managed Bean, o que manterá seus valores
carregados entre chamadas sucessivas.

Um exemplo é apresentado a seguir.

@Named(value = "produtoMB")

@SessionScoped

public class ProdutoMB extends Produto{

4. Ao solicitar a criação de entidades JPA a partir do banco de dados, no NetBeans, é solicitado que se defina
um pool de conexões para o acesso a este banco. Qual tecnologia Java é utilizada para o registro e localização deste
pool?

Certo JNDI

Explicação:

O serviço de nomes e diretórios do Java é denominado JNDI, e serve para o registro e localização de objetos como
pools de conexão e filas de mensagerias, entre diversos outros.

5. Em uma arquitetura MVC com uso de JSF, JPA e EJB, em que camadas estariam, respectivamente, os
componentes de cada uma destas tecnologias?

Certo View, Model e Control

Explicação:

Os componentes JSF 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.

6. No ambiente JEE, a anotação PersistenceContext é utilizada para:

Certo Instanciar um EntityManager a partir da unidade de persistência.

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.

7. Ao gerar diversas camadas de um aplicativo corporativo, com uso dos processos de automação do NetBeans,
você notou que os Session Beans vinham com a anotação PersistenceContext sobre alguns atributos. Qual a função
desta anotação?

Certo Instanciar o EntityManager, efetuando a relação com a unidade de persistência correta.

Explicação:
A anotação citada serve para instanciar o EntityManager, efetuando a relação com a unidade de persistência correta,
como no exemplo seguinte.

@PersistenceContext(unitName = "ExemploCompleto-ejbPU")

private EntityManager em;

Note que a automatização do NetBeans gera uma classe abstrata de base, agrupando as operações de banco, e
concretiza estas operações, baseado em Generics, no descendente do tipo Session EJB, onde é também concretizada
também a relação com o banco de dados, instanciando o EntityManager com a anotação do exemplo.

8. 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:

Certo Session Facade

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

1ª AV - 27/04/2021

1a Questão Acerto: 1,0 / 1,0


Qual das opções abaixo não é um tipo primitivo Java?

text - ERRADA
Explicação:não existe tipo primitivo text – TIPOS PRIMITIVOS: int, boolean, float, double

2a Questão Acerto: 1,0 / 1,0


Acerca de interfaces, na sintaxe Java, qual a informação correta?

É um elemento totalmente abstrato, com um conjunto de assinaturas de métodos.


Explicação: Uma interface é definida pela palavra interface e implementada com o uso de implements.
Contém apenas assinaturas de métodos que podem ser implementados por qualquer classe, diferentemente de
classes abstratas, que definem regras para uma família específica de classes descendentes.

3a Questão Acerto: 1,0 / 1,0


Acerca das anotações, é correto afirmar:

São metadados anexados aos elementos de programação que podem ser recuperados através de reflexividade
computacional.
Explicação: As anotações são metadados não serializáveis que podem ser anexados aos elementos de programação
para o reconhecimento posterior a partir de ferramentas externas.
Não se trata de comentários simples, a definição é feita com o uso de @interface e elas aceitam valores default.

4a Questão Acerto: 1,0 / 1,0


As interfaces ouvintes servem para a captura de eventos no ambiente gráfico criado com o uso de Java. Qual ouvinte
deve ser utilizado para a captura do clique sobre um botão ou item de menu?
ActionListener
Explicação: Eventos de clique, como estes, são capturados com o uso de ActionListener e a implementação de seu
único método, o actionPerformed.

5a Questão Acerto: 1,0 / 1,0


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?

onchange
Explicação:O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança.
6a Questão Acerto: 1,0 / 1,0
Qual das opções abaixo não representam frameworks para o ambiente Java Web:

Netbeans
Explicação: Netbeans é uma IDE, não É um framework

7a Questão Acerto: 1,0 / 1,0


Baseado na linha de comando abaixo, marque qual deve ser o comando seguinte:

Statement st = Conexao.getConection().createStatement();

ResultSet rs = st.executeQuery("select * from ALUNOS");


Explicação: Após criar o executor de SQL (Statement),
o próximo passo pode ser uma consulta,
efetuada a partir do método executeQuery,
com o retorno do resultado na forma de um ResultSet.

8a Questão Acerto: 1,0 / 1,0


Qual componente do JSF assume o papel de Front Control?

FacesServlet
Explicação: Segundo o mapeamento feito no web.xml, toda chamada a páginas JSF será direcionada para o
FacesServlet, fazendo com que o mesmo assuma o papel de Front Control na arquitetura do JSF.

9a Questão Acerto: 1,0 / 1,0


Arquivo de configuração necessário para a definição das conexões no JPA:

persistence.xml
Explicação: O arquivo persistence.xml guarda as configurações JDBC e definições de unidades de persistência.

10a Questão Acerto: 1,0 / 1,0


Em uma arquitetura MVC, com uso de JSF e EJB, temos um componente para comunicar com o Session EJB,
denominado ProdutoControlMB, anotado com ApplicationScoped, e outro para encapsular a entidade denominado
ProdutoMB, anotado com SessionScoped. Segundo esta configuração, podemos afirmar que:

Temos uma instânica de ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada usuário logado.
Explicação: Nesta arquitetura temos uma camada Model com o JPA e as entidades, seguido da camada Control com
os Session EJBs, funcionando de fachada para a Model. Em seguida temos a camada View com uso de JSF, onde
encapsulamos a chamada aos EJBs através de ProdutoControlMB e as entidades através de ProdutoMB, de forma a
compatibilizar com as necessidades do JSF para utilização. Com o uso das anotações de escopo citadas, temos uma
instânica de ProdutoControlMB para todo o aplicativo e uma de ProdutoMB para cada usuário logado.