Buscar

ATIVIDADE A4 - JAVA WEB E FRAMEWORKS

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

Prévia do material em texto

Curso GRA0813 JAVA WEB E FRAMEWORKS GR1771202 - 202020.ead-11354.01
Teste ATIVIDADE 4 (A4)
Iniciado 26/08/20 01:29
Enviado 04/10/20 12:24
Status Completada
Resultado da tentativa 6 em 10 pontos  
Tempo decorrido 946 horas, 54 minutos
Resultados exibidos Respostas enviadas, Respostas corretas, Comentários
Pergunta 1
Resposta
Selecionada:
Resposta
Correta:
Feedback
da
resposta:
Apesar de as ferramentas de ORM facilitarem o processo de conversão de dados do paradigma de orientação de
objetos para o relacional, as diferenças entre os dois paradigmas não permitem uma conversão total. Isso é o que
se denomina impedância objeto-relacional (mais popular pelo termo em inglês object-relational impedance
mismatch ), que trata, principalmente, de cinco problemas na conversão entre as maneiras de representar os
dados. Um desses problemas é a granularidade. Nesse sentido, assinale a alternativa que apresenta corretamente
a definição desse problema. 
 
É comum que uma aplicação orientada a objetos possua muitas classes, sendo que não é ideal, do
ponto de vista do paradigma relacional, que todas essas classes se tornem tabelas no banco de
dados.
É comum que uma aplicação orientada a objetos possua muitas classes, sendo que não é ideal, do
ponto de vista do paradigma relacional, que todas essas classes se tornem tabelas no banco de
dados.
Resposta correta. A alternativa está correta, pois o paradigma orientado a objeto possui maior
granularidade do que o paradigma relacional. Assim, nem todas as classes de uma aplicação Java,
idealmente, devem se tornar entidades (tabelas) de um banco de dados relacional.
Pergunta 2
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
O mapeamento objeto-relacional é uma técnica que converte os dados do paradigma orientado a objetos para o
paradigma relacional. O paradigma relacional possui, de fato, relacionamentos entre entidades que podemos
adicionar às classes Java utilizando anotações do Hibernate. 
 
Sobre o relacionamento um para um, analise as afirmativas a seguir:
 
I. É uma relação de unicidade, na qual cada registro somente pode se relacionar com um outro registro da outra
tabela.
II. Para representar um relacionamento um para um no banco de dados, a chave primária de uma tabela se torna a
chave estrangeira da outra tabela.
III. Para definir o relacionamento entre duas classes Java como um para um, é necessário adicionar o objeto como
atributo de outra classe e marcá-lo com a anotação @OneToOne.
IV. O Hibernate não consegue mapear o relacionamento um para um, sendo que esses relacionamentos fazem
parte das incompatibilidades entre os dois paradigmas.
 
Está correto o que se afirma em:
 
I, II e III, apenas.
I, II e III, apenas.
Resposta correta. A alternativa está correta. O relacionamento um para um é um relacionamento de
unicidade, sendo que cada registro pode se relacionar com apenas um registro da outra tabela. Desse
modo, sua representação é feita adicionando a chave primária de uma tabela como chave estrangeira
da outra tabela. No Java, esse relacionamento precisa ser definido utilizando a anotação
@OneToOne.
Pergunta 3
O Hibernate é um framework Java que facilita o mapeamento de objetos para o paradigma relacional. Ele é
responsável por mapear classes java para tabelas no banco de dados e de converter tipos de dados Java para
tipos de dados do SQL. Além disso, ele diminui significativamente o tempo de programação que seria dedicado ao
gerenciamento manual dos dados utilizando apenas SQL e JDBC. 
1 em 1 pontos
1 em 1 pontos
0 em 1 pontos
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
 
Considerando as principais características do Hibernate, analise as afirmativas a seguir:
 
I. O Hibernate implementa diversas características, funcionalidades e otimizações que o torna uma ferramenta de
alta performance, como inicialização preguiçosa.
II. O Hibernate é conhecido por sua estabilidade e qualidade, tanto que possui muitos adeptos, dentre eles,
destacam-se os programadores Java.
III. O Hibernate é conhecido por possuir uma ótima equipe de suporte e manutenção 24h, oferecendo apoio ao
desenvolvimento de aplicações.
IV. O Hibernate permite que o usuário o configure e customize para que se atente às suas necessidades
específicas.
 
Está correto o que se afirma em:
 
I, II e III, apenas.
I, II e IV, apenas.
Sua resposta está incorreta. A alternativa está incorreta. O Hibernate é um software gratuito e open
source, portanto, não possui uma equipe dedicada (gratuita) para realizar o suporte e a manutenção
de aplicações que utilizam o Hibernate. Essas operações possuem diversos custos e o Hibernate é
um software gratuito.
Pergunta 4
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
O mapeamento objeto-relacional é uma técnica que converte os dados do paradigma orientado a objetos para o
paradigma relacional. Ainda há, no entanto, certas incompatibilidades entre os dois paradigmas. Esse conceito é
denominado impedância objeto-relacional (mais popular pelo termo em inglês object-relational impedance
mismatch ), que trata, principalmente, de cinco problemas na conversão entre as maneiras de representar os
dados. Considerando o exposto, assinale a alternativa que apresenta corretamente os cinco problemas na
conversão entre os paradigmas. 
 
Granularidade, subtipos, identidade, associação e navegação de dados.
Granularidade, subtipos, identidade, associação e navegação de dados.
Resposta correta. A alternativa está correta. O problema subtipos é que alguns dos principais
conceitos intrínsecos à orientação a objetos (OO) não possuem um equivalente no paradigma
relacional, como herança, polimorfismo e interfaces. A granularidade significa que, muitas vezes, uma
aplicação OO irá possuir muitas classes, sendo que não é ideal que todas essas classes se tornem
tabelas. A noção da identidade é que o modelo relacional implementa apenas a igualdade, enquanto o
OO possui igualdade e identidade. A associação consiste no fato de que ambos os paradigmas
possuem maneiras diferentes de associar os dados. Por fim, o modo de acesso a dados (navegação
dos dados), nos dois paradigmas, é conflitante.
Pergunta 5
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
O Hibernate é um framework ORM que facilita o mapeamento de dados representados na forma de objetos em
aplicações Java para dados representados na forma tabular, no paradigma relacional, tendo funcionalidades para
definir relacionamentos SQL em aplicações Java. 
 
No que tange ao relacionamento muitos para muitos, analise as afirmativas a seguir:
 
I. Cada um dos registros de cada uma das tabelas pode se relacionar com muitos outros registros da outra tabela.
II. No relacionamento muitos para muitos, cria-se uma nova tabela para representar o relacionamento. 
III. Para definir o relacionamento entre duas classes como muitos para muitos, é preciso somente adicionar o objeto
como atributo da outra classe e com a anotação @OneToMany.
IV. No relacionamento muitos para muitos, somente uma das classes do relacionamento precisa possuir, como
atributo, uma lista de objetos da classe que está se relacionando.
 
Está correto o que se afirma em:
 
I, II e IV, apenas.
I e II, apenas.
Sua resposta está incorreta. A alternativa está incorreta. Para definir o relacionamento entre duas
classes como muitos para muitos, é preciso adicionar em cada uma das classes, como atributo, uma
lista de objetos da outra classe e marcar essa lista com a anotação @ManyToMany.
1 em 1 pontos
0 em 1 pontos
Pergunta 6
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
A programação em Java, para aplicações web ou não, envolve manipular dados encapsulados como objetos e
construir relações entre eles, seja por herança, interface, seja adicionando um objeto como atributo de uma classe.
No entanto, para fazer a persistência dos dados, é possível armazená-los em um banco que se utiliza de outro
modelo de representação de dados. 
 
A respeitoda conversão de um paradigma para o outro, analise as afirmativas a seguir:
 
I. Devido a incompatibilidades entre os dois paradigmas, não é possível fazer a conversão do paradigma relacional
para o orientado a objetos e vice-versa.
II. Existem frameworks ORM ( object-relational mapping ) que convertem os dados do paradigma orientado a
objetos para o paradigma relacional.
III. De modo superficial, ao se converter dados do paradigma orientado a objetos para o relacional, as classes se
tornam tabelas e os objetos se tornam registros dessas tabelas.
IV. Uma alternativa para evitar a incompatibilidade de representação dos dois paradigmas é utilizar diretamente a
API do JDBC do Java ao invés de utilizar um framework ORM.
 
Está correto o que se afirma em:
 
II, III e IV, apenas.
II e III, apenas.
Sua resposta está incorreta. A alternativa está incorreta, pois, apesar de existirem certas
incompatibilidades entre ambos os modelos de representação de dados, ainda é possível fazer a
conversão de um modelo para o outro. Essa é justamente a função de certos frameworks, como o
Hibernate. Além disso, caso se opte por não utilizar algum framework ORM ( object-relational
mapping) e utilizar apenas a API do JDBC, o trabalho de conversão existirá e será muito maior, uma
vez que não existirão as facilidades já implementadas pelos frameworks ORM.
Pergunta 7
Resposta Selecionada:
 
Resposta Correta:
 
Feedback
da
resposta:
O mapeamento objeto-relacional é normalmente implementado pelo framework Hibernate em aplicações Java,
sendo ele o responsável por converter dados representados no paradigma orientado a objetos para o paradigma
relacional. Para que uma classe seja mapeada pelo Hibernate, é necessário utilizar anotações Java. 
 
Considerando o exposto, analise o código a seguir e assinale a alternativa que apresenta, respectivamente, as
anotações 1 e 2.
 
@anotação_1 
 public class Professor { 
 @anotação_2 
 private int id; 
 private String cpf; 
 private String nome; 
 private String telefone; 
 [métodos getters e setters] 
}
@Entity e @Id. 
 
 
@Entity e @Id.
 
 
Resposta correta. A alternativa está correta. O Hibernate utiliza anotações Java para que o framework
saiba qual classe ele deve fazer a persistência e qual é a chave primária da classe que será
convertida em tabela. Para isso, são utilizadas, respectivamente, as anotações @Entity e @Id.
Pergunta 8
O Hibernate é um framework Java que faz o mapeamento objeto-relacional. Ele permite mapear relações entre
tabelas SQL do banco de dados em aplicações Java, por meio de anotações feitas na classe, definindo se o
relacionamento é um para um, um para muitos ou muitos para muitos. A seguir, tem-se o código da classe Empresa
que possui como atributo o objeto da classe Endereco:
 
@Entity 
public class Empresa { 
0 em 1 pontos
1 em 1 pontos
1 em 1 pontos
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
 @Id 
 private int id; 
 private String nome; 
 private String telefone; 
 private int 
numero_de_funcionarios; 
 < anotação > 
 private Endereco endereco; 
 [métodos getters e setters ] 
} 
 
 
A respeito do exposto, assinale a alternativa que apresenta a anotação que determina o relacionamento entre as
duas classes.
@OneToOne.
@OneToOne.
Resposta correta. A alternativa está correta. No caso apresentado, cada empresa somente possui um
endereço e, por definição, o endereço deve servir para identificar um lugar unicamente. Assim, a
relação entre as duas classes é @OneToOne. Nesse caso, a tabela Empresa possuirá como chave
estrangeira a chave primária da tabela Endereco.
Pergunta 9
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
O Hibernate é um framework ORM que faz o mapeamento objeto-relacional entre aplicações Java para banco de
dados relacional. O paradigma relacional possui, de fato, relacionamentos entre entidades que podemos adicionar
às classes Java utilizando anotações do Hibernate. 
 
Quanto ao relacionamento um para muitos, analise as afirmativas a seguir:
 
I. Cada um dos registros de cada uma das tabelas pode se relacionar com muitos outros registros da outra tabela.
II. No relacionamento um para muitos, a chave primária da tabela que possui seus recursos compartilhados se
torna a chave estrangeira da outra tabela. 
III. Para definir o relacionamento entre duas classes como um para muitos, é preciso somente adicionar o objeto
como atributo da outra classe e com a anotação @OneToMany.
IV. No mapeamento um para muitos, a entidade “muitos” é representada como uma Lista Java.
 
Está correto o que se afirma em:
 
I, II e III, apenas.
II e IV, apenas.
Sua resposta está incorreta. A alternativa está incorreta. Para definir o relacionamento entre duas
classes como um para muitos, é preciso adicionar o objeto como atributo da outra classe e com a
anotação @OneToMany(mappedBy=”Nome do atributo na outra classe”). Além disso, é preciso
adicionar na outra classe o atributo e marcá-lo como @ManyToOne. Destaca-se, também, que um
registro pode ser compartilhado por muitos outros registros da outra tabela que há a associação, mas
não vice-versa.
Pergunta 10
Resposta Selecionada: 
O Hibernate é um framework ORM que faz o mapeamento objeto-relacional entre aplicações desenvolvidas na
linguagem Java para banco de dados relacional. Depois de instalar o framework, precisamos configurar o
funcionamento do Hibernate. Para isso, utilizamos o hibernate.cfg.xml. 
 
A respeito desse arquivo de configuração, analise as afirmativas a seguir:
 
I. No arquivo de configuração do Hibernate, é necessário configurar o SGBD utilizado, além do banco de dados, do
usuário e da senha de acesso desse banco de dados.
II. É necessário mapear as classes que se tornaram entidades (tabelas) no paradigma relacional no banco de
dados nesse arquivo.
III. Na tag hbm2ddl.auto, define-se que, toda vez que a aplicação for salvar um dado, a tabela deverá ser criada
automaticamente ou não.
IV. É necessário definir qual é o dialeto SQL utilizado com o banco de dados, já que há ligeiras mudanças na
linguagem SQL de cada SGBD.
 
Está correto o que se afirma em:
I, III e IV, apenas.
0 em 1 pontos
1 em 1 pontos
Resposta Correta: 
Feedback
da
resposta:
I, III e IV, apenas.
Resposta correta. A alternativa está correta, pois, no arquivo de configuração do HIbernate, é
necessário definir: o SGDB utilizado, o banco de dados utilizado, o usuário, a senha de acesso e o
dialeto SQL do banco de dados. Além disso, a tag hbm2ddl.auto define se a tabelas devem ser
sempre criadas ao rodar a aplicação ou somente atualizadas por meio do uso de create ou update.

Continue navegando