Oi, Samay!
No mundo do JPA (Java Persistence API), uma entidade é uma classe Java que é mapeada para uma tabela no banco de dados. Essa classe é anotada com @Entity
, o que indica ao JPA que ela deve ser tratada como uma entidade persistente. Cada instância dessa classe representa uma linha na tabela do banco de dados.
Por exemplo:
@Entity
public class Usuario {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
private String nome;
private String email;
// Getters e setters
}
No exemplo acima, a classe Usuario
é uma entidade. Quando você cria um novo objeto Usuario
e o salva no banco de dados, ele se torna uma nova linha na tabela correspondente.
Agora, sobre a sua dúvida específica: cada linha na tabela do banco de dados é uma instância da entidade, mas a entidade em si é a definição da classe (Usuario
no exemplo). A anotação @Entity
é usada para definir essa classe como uma entidade JPA.
Quanto às chaves primárias, elas são usadas para garantir que cada instância da entidade (ou seja, cada linha na tabela) seja única. O campo anotado com @Id
serve como a chave primária, e a anotação @GeneratedValue
define como esse ID será gerado.
Então, resumindo:
- Entidade: Classe Java anotada com
@Entity
que é mapeada para uma tabela no banco de dados. - Instância da entidade: Cada objeto da classe entidade que é salvo no banco de dados, representando uma linha na tabela.
Espero ter ajudado e bons estudos!