Order, enum, relacionamento MayToOne

Relacionamento muitos-para-um

Um pedido para um usuário. Um usuário, pode ter vários pedidos.

Classe Order:

    @ManyToOne
    @JoinColumn(name = "client_id")
    private User client;

Como são várias Orders, será uma lista na classe User.

Classe User:

    @OneToMany(mappedBy = "client")
    private List<Order> orders = new ArrayList<>();

Ao rodar o projeto com as anotações inseridas, dentro do H2, teremos uma nova coluna e tabela, veja:

Tabela Order criada, juntamente com a coluna "client_id", conforme passamos em sua classe.

❗Recomendação

No nosso atributo Instant, passar na coluna uma definição, para que ele seja salvo no banco de dados como um instante padronizado em UTC (fuso horário de Londres, GMT), veja:

    @Column(columnDefinition = "TIMESTAMP WITHOUT TIME ZONE")
    private Instant moment;

Assim, já saberemos que essa coluna é do tipo UTC. Será mais fácil depois converter para o horario local do usuário.

Atualizado