Встречается на собеседованиях • сегодня

Какую аннотацию использовать с ID для генерации внутри базы данных

Для генерации ID внутри базы данных в JPA/Hibernate используйте аннотацию @GeneratedValue вместе с @Id.

Пример:

java
@Entity
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    // другие поля...
}

Стратегии генерации:

  • GenerationType.IDENTITY – база сама генерирует ID (AUTO_INCREMENT в MySQL, SERIAL в PostgreSQL).
  • GenerationType.SEQUENCE – использует sequence (например, в Oracle).
  • GenerationType.TABLE – эмуляция sequence через таблицу (менее эффективно).
  • GenerationType.AUTO – Hibernate сам выбирает стратегию (по умолчанию).

Лучший выбор: IDENTITY для MySQL/PostgreSQL, SEQUENCE для Oracle.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы