Loading repository data…
Loading repository data…
dellribeiro / repository
Projeto/desafio de LAB Spring Data JPA oferecido gratuitamente pela plataforma de cursos online Digital Innovation One.
Meu objetivo com este projeto é aprender os principais conceitos de mapeamento objeto relacional (ORM) utilizando o Spring Data JPA, por meio do desenvolvimento de uma API RESTful que represente o domínio de uma academia de ginástica, focando na modelagem das entidades da API, a fim de entender melhor como funciona a utilização do ORM na prática.
@Entity Usada para especificar que a classe anotada atualmente representa um tipo de entidade.
@Table Usada para especificar a tabela principal da entidade atualmente anotada.
@Id Especifica o identificador da entidade. Uma entidade deve sempre ter um atributo identificado.
@GeneratedValue Especifica que o valor do identificador de entidade é gerado automaticamente.
@Column Usada para especificar o mapeamento entre um atributo de entidade básico e a coluna da tabela de banco de dados.
@JoinColumn Usada para especificar a coluna FOREIGN KEY. Indica que a entidade é a responsável pelo relacionamento.
@OneToMany Usada para especificar um relacionamento de banco de dados um-para-muitos.
@OneToOne Usada para especificar um relacionamento de banco de dados um-para-um.
@ManyToOne Usada para especificar um relacionamento de banco de dados muitos-para-um.
cascade Realizar operações em cascata só faz sentido em relacionamentos Pai - Filho.
mappedBy Indica qual é o lado inverso ou não dominante da relação.
Antes de começar, certifique-se de ter as seguintes ferramentas instaladas em seu ambiente de desenvolvimento:
Instale o aplicativo Postman em seu ambiente de desenvolvimento.
Abaixo, segue uma lista de exemplos caso queira cadastra um novo aluno:
Você pode enviar as requisições HTTP utilizando os seguintes modelos de JSON:
{
"nome": "Nome do aluno",
"cpf": "222.222.222-22",
"bairro": "Bairo do aluno",
"dataDeNascimento": "01/01/2001"
}
{
"nome": "Nome do aluno",
"bairro": "Bairo novo do aluno",
"dataDeNascimento": "01/02/2001"
}