Lista de Exercícios de Projeto e Implementação Orientado a Objeto – Lista 7


Questão 1

Embora certas anotações não sejam necessárias, elas ajudam ao compilador informar ao programador caso exista alguma inconsistência. Qual são respectivamente as anotações que informam que a anotação será utilizada pelo javadoc ou tools similares e avisa os usuários que se utilizem da classe, método ou atributo anotado que o uso do objeto não é mais recomendado?

a) @Documented e @Deprecated

b) @Documented e @Inherited

c) @ Deprecated e @ Inherited

d) @Target e @ @Retention

e) @ Retention e @ Target


Questão 2

Dado o código abaixo, o que será exibido?

pooo002

a) Executando…Oswaldo

b) Executando…Gisele

c) Executando…Giovanna e Giulianna

d) Gisele

e) Oswaldo


Questão 3

Dado o código abaixo, o que será exibido?

pooo003

a) Calculando…789 – Giovanna e Giulianna

b) 123 – Oswaldo

c) Calculando…456 – Gisele

d) Calculando…123 – Oswaldo

e) Erro


Questão 4

(TJ-PE/2011)Quando se utiliza JPA, um EntityManager mapeia um conjunto de classes a um banco de dados particular. Este conjunto de classes, definido em um arquivo chamado persistence.xml, é denominado:

a) Persistence context

b) Persistence unit

c) Entity manager factory

d) Entity transaction.

e) Persistence provider


Questão 5

(TJ-PE/2011) Em uma classe de entidade de uma aplicação que utiliza JPA, a anotação que define um atributo que não será salvo no banco de dados é a

a) @Optional

b) @Transient

c) @Stateless

d) @Stateful

e) @Local


Questão 6

(TCE-PR/2011) A JPA:

a) Pode ser usada fora de componentes EJB e fora da plataforma Java EE, em aplicações Java SE.

b) Utiliza persistência gerenciada por contêiner (CMP), ou seja, as classes de entidade e persistência necessitam de um contêiner presente em um servidor de aplicações para serem executadas.

c) Utiliza descritores XML para especificar informações do mapeamento relacional de objeto, mas não oferece suporte a anotações

d) Suporta consultas dinâmicas nomeadas nas classes de entidade que são acessadas apenas por instruções SQL nativas.

e) Possui uma interface entitybeans que padroniza operações Create Read Update Delete (CRUD) que envolvem tabelas.


Questão 7

Assinale a afirmativa correta no que tange a Annotations:

a) São uma forma especial de declaração de metadados que podem ser adicionadas ao código-fonte pelo programador.

b) Provêem informações sobre o comportamento de um programa.

c) São aplicáveis à classes, métodos, atributos e outros elementos de um programa.

d) Pode instruir ao compilador quanto a detecção de erros e supressão de warnings.

e) Não define mapeamento entre o objeto java e o banco de dados utilizando ORM.


Questão 8

(TJ-PE/2011) Sobre JEE e tecnologias relacionadas é correto afirmar que:

a) O EntityManager é uma classe identificada com a anotação @Entity que representa o modelo das tabelas do banco de dados.

b) O EntityManager é o serviço central do JPA para todas as ações de persistência e oferece todas as funcionalidades de um DAO genérico.

c) Um servidor de aplicações Java EE possui um único contêiner conhecido como contêiner EJB.

d) Serlvets e JSP rodam no contêiner EJB do servidor de aplicação JEE.

e) Em aplicações que utilizam EJB com JPA, um arquivo persistence.xml pode definir uma única unidade de persistência.


Questão 9

(UFRN/2014) Sobre o EntityManager, afirmar-se que:

I. é o principal serviço do framework Spring.

II. oferece funcionalidades de um DAO genérico.

III. tem a responsabilidade de gerenciar o ciclo de vida dos EJBs.

IV. representa o serviço central do JPA para todas as ações de persistência.

Estão corretas as afirmativas?

a) II e IV.

b) I e II.

c) III e IV.

d) I e III.


Questão 10

(TRT – 19ª Região/2011) Os estados do ciclo de vida de uma instância de uma entidade, definidos na JPA 2.0, são:

a) Novo (new), gerenciado (managed), destacado (detached) e removido (removed).

b) ativo (active), inativo (inactive) e removido (removed).

c) Novo (new), temporário (temporary), permanente (permanent) e destacado (detached).

d) Novo (new), temporário (temporary) e destacado (detached).

e) Gerenciado (managed), temporário (temporary), permanente (permanent) e destacado (detached).


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


RESPOSTAS

Questão 1 – A

Justificativa: • @Documented -> indica que os tipos anotação anotados com ela serão incluídos na documentação Javadoc;

Questão 2 – B

Justificativa: • String nome(), indica que a a anotação @Anotacao possui o membro nome do tipo String.

Method m = c.getMethod(“executar”);

Anotacao aux = m.getAnnotation(Anotacao.class);

Como pode observar na linha Anotacao aux = m.getAnnotation(Anotacao.class), a anotação é a referente ao método:

@Anotacao(nome = “Gisele”)

public static void executar() { System.out.print(“Executando…”);}

Questão 3 – D

Justificativa: • String matricula() e String nome() . Indicam que a a anotação @AlunoAnotacao possui os membros matricula e nome do tipo String.

Class c = test.getClass();

AlunoAnotacao Aluno

= (AlunoAnotacao) c.getAnnotation(AlunoAnotacao.class);

Como pode observar na linha

AlunoAnotacao Aluno = (AlunoAnotacao) c.getAnnotation(AlunoAnotacao.class), a anotação é a referente a classe:

@AlunoAnotacao(matricula = “123”, nome = “Oswaldo”)

public class Teste {

Questão 4 – B

Justificativa: Para configurar o JPA em uma aplicação, devemos criar um arquivo chamado persistence.xml. A persistence-unit é criada dentro do persistence.xml. O conteúdo contém informações sobre o banco de dados, como a url de conexão, usuário e senha, além de dados sobre a implementação JPA que será utilizada.

 

Questão 5 – B

Justificativa: A anotação @Transient é empregada para campos que não precisam ser armazenados na base de dados. Essa anotação não tem qualquer atributo. Sua utilização é bem simples bastando apenas adicionar a anotação na variável de instância ou no método getter apropriado.

Questão 6 – A

Justificativa: Analisando as opções:

Questão 7 – E

Justificativa: A Java Persistence API(JPA), além de oferecer diversas funcionalidades essenciais em qualquer aplicação corporativa., é um framework para Mapeamento Objeto-Relacional (ORM – Object-Relational Mapping). O JPA permite mapear os relacionamentos entre as classes e tabelas. Exemplos:

@OneToOne, @OneToMany, @ManyToOne

Questão 8 – B

Justificativa: • O EntityManager é uma classe identificada com a anotação @Entity que representa o modelo das tabelas do banco de dados. -> Errada. define uma entidade como persistente.

Questão 9 – A

Justificativa: • É o principal serviço do framework Spring. –Errada -> O EntityManager é o serviço central do JPA.

Questão 10 – A

Justificativa: • Novo (new) -> A entidade não possui um ID. Objetos são conhecidos como transientes.

 

 


Material retirado da Web.

Se você tiver alguma dúvida ou correção a fazer, por favor, comente! Obrigado!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.