Как сделать чтобы при записи через JPA в id значения записывались по порядку

@Entity
@Table(name = "users")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", nullable = false, columnDefinition = "serial")
    private Long id;
    @Column(name = "name")
    private String name;
    @Column(name = "email", unique = true)
    private String email;
    @Column(name = "active")
    private boolean active;
    @Column(name = "password", length = 1000)
    private String password;
    @Enumerated(EnumType.STRING)
    @Column(name = "role", columnDefinition = "default 'USER'")
    private Role role = Role.USER;

    @Override
    public String toString() {
        return String.format(
                "User: [id=%d, name='%s', email='%s']",
                id, name, email);
    }
}

Не могу понять как сделать чтобы при записи в ID значения записывались по порядку с учетом пропущенных, т.е: у меня есть записи 1, 2, 3, 7, 8. когда я отправляю запрос у меня запись в id идет 9, 10 и тд. как сделать чтобы запись шла в 4? В таблице Id - not null, serial, primary key. Пробовал @GeneratedValue(strategy = GenerationType.SEQUENCE), результат тот же. Или пробелы в таблице это жизненные реалии и исправлять это не имеет смысла?


Ответы (0 шт):