Sobes.tech
Назад к вопросам
Junior — Middle
61

Какие основные требования предъявляются к классам Entity при использовании JPA?

Компании, где спрашивали
AstonAston

Ответ от нейросети

sobes.tech AI

Основные требования к классам Entity при использовании JPA:

  • Класс должен быть аннотирован @Entity.
  • Наличие публичного или защищённого конструктора без параметров.
  • Класс должен иметь уникальный идентификатор, аннотированный @Id.
  • Поля класса могут быть приватными, но должны иметь геттеры и сеттеры для доступа.
  • Класс не должен быть финальным, чтобы JPA мог создавать прокси.
  • Рекомендуется реализовать методы equals() и hashCode() на основе идентификатора.

Пример:

@Entity
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String name;

    protected User() {} // конструктор по умолчанию

    public User(String name) {
        this.name = name;
    }

    public Long getId() { return id; }
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
}