Checkpoint II - Enterprise Application Development aplicada em 03/05/2023.
Enterprise Application Development | |
---|---|
ALUNO: | TURMA: 2TDSPI - 2TDSPJ |
PROFESSOR: Benefrancis do Nascimento | 03/05/2023 |
CHECK POINT II | VALE 10 PONTOS |
A Holding Benezinho deseja entrar no concorrido mercado de seguros, para tal está desenvolvendo um revolucionário sistema para cadastramento de seguros.
Contratamos você e uma equipe de Arquitetos de Software para projetarem e construir um sistema capaz de registrar os seguros contratados no banco de dados.
Na sprint atual, você foi incumbido de fazer:
-
O Mapeamento Objeto Relacional das primeiras classes envolvidas neste projeto de software;
-
A criação automatizada das tabelas no banco de dados Oracle;
-
A persistência de todos os dados de um seguro, e;
-
A criação de dois métodos capazes de realizar consultas aos dados persistidos previamente:
-
Consulta todos os seguros findAll;
-
Consulta seguro pela chave primária findById.
Veja o Diagrama de Classes abaixo (as classes já foram criadas):
Na sprint atual, você foi incumbido de fazer:
- O Mapeamento Objeto Relacional das primeiras classes envolvidas neste projeto de software;
- A criação automatizada das tabelas no banco de dados Oracle;
- A persistência dos dados dos seguros;
- A criação de dois métodos capazes de realizar consultas aos dados persistidos previamente.
- Consulta todos os seguros findAll
- Consulta seguro pela chave primária findById
Importe o projeto do github :
https://github.com/Benefrancis/seguro-holding-benezinho.git
Caso o github esteja indisponível, você deverá pegar o projeto no diretório compartilhado.
Você deverá:
-
(0,5 Ponto) acessar o arquivo persistence.xml e alterar as configurações da persistence-unit para que seja possível conectar-se ao banco de dados Oracle da FIAP com o seu usuário e senha (manter o seu usuário e senha ativo é sua responsabilidade). Não utilize o usuário e senha de outro aluno. Caso tenha problema para autenticar, comunique o professor.
-
(1,5 Ponto) adicionar corretamente as anotações JPA na classe Imovel.
Lembre-se que:
- Deverá adicionar uma constraint para que não seja possível ter mais de um Imóvel com o mesmo número de registro no cartório na tabela do banco de dados;
- Existe relacionamento Muitos para Muitos entre Imovel e Pessoa no atributo proprietários.
-
(1,5 Ponto) adicionar corretamente as anotações JPA na classe Veiculo.
Lembre-se que:
- Deverá adicionar duas constraint para que não seja possível ter mais de um veículo com o mesmo chassis ou com a mesma placa na tabela do banco de dados;
- Existe relacionamento Muitos para Um entre Veículo e Pessoa no atributo proprietário.
-
(1,5 Ponto) adicionar corretamente as anotações JPA na classe Corretor.
Lembre-que:
- Deverá adicionar uma constraint para que não seja possível ter mais de um Corretor de seguro com o mesmo número de cadastro na SUSEP (SUSEP - Superintendência de Seguros Privados) na tabela do banco de dados;
- Existe relacionamento Muitos para Um entre Corretor e Pessoa no atributo pessoa.
-
(4 Pontos) adicionar corretamente as anotações JPA na classe Seguro.
Lembre-se que:
-
(1 ponto) Existe relação Muitos para Um entre:
- Seguro e Contratante;
- Seguro e Corretor;
-
(2 pontos) A classe Seguro possui três classes herdeiras:
- Seguro Residencial;
- Seguro Veicular;
- Seguro de Vida.
-
(1 ponto) Existe relação Muitos para Muitos entre Seguro e beneficiários;
-
-
(0,5 Ponto) criar um método capaz de consultar um Seguro pelo seu identificador na correspondente tabela no banco de dados;
-
(0,5 Ponto) criar um método capaz de consultar todos os Seguros na correspondente tabela no banco de dados;
A correção da prova será disponibilizada no github do professor (branch correcao):
Para acessar digite no prompt:
git clone https://github.com/Benefrancis/seguro-holding-benezinho.git && cd seguro-holding-benezinho && git checkout correcao
A prova é individual, em caso de fraude de qualquer tipo todos os envolvidos receberão nota ZERO.
Boa prova.