Mapeando uma entidade

Para que o Spring conheça as tabelas do banco de dados é preciso configurar o mapeamento das entidades. Para isso, é preciso criar uma classe que represente a tabela do banco de dados. Essa classe é chamada de entidade.

Vamos criar uma nova classe chamada User para representar os usuários no sistema. Por enquanto essa classe tem apenas os atributos id, email e password. Crie os métodos getters e setters para os atributos. A parte importante é realizar a anotação da classe para instruir o Spring que essa classe é uma entidade.

1
@Entity
2
@Table(name = "user")
3
public class User {
4
5
@Id
6
@GeneratedValue(strategy = GenerationType.IDENTITY)
7
@Column(name = "id")
8
private int id;
9
10
@Column(name = "email")
11
private String email;
12
13
@Column(name = "password")
14
private String password;
15
...

Como você deve perceber surgiram diversas anotações novas: -@Entity: indica que essa classe é uma entidade/tabela. -@Table: indica o nome da tabela no banco de dados. -@Id: indica que o atributo é a chave primária da tabela. -@GeneratedValue: indica que o valor do atributo é gerado automaticamente pelo banco de dados. -@Column: indica o nome da coluna no banco de dados.

Você pode pesquisar mais sobre a anotação GeneratedValue em https://www.alura.com.br/artigos/entendendo-a-geracao-de-chaves-com-jpa

Existem diversas outras anotações que podem ser utilizadas para mapear as entidades, mas por enquanto essas serão suficientes para começarmos a explorar o banco de dados. Após criar a classe User com as suas respectivas anotações, suba novamente a aplicação, caso não tenha nenhum erro no console então o mapeamento foi realizado com sucesso.