Как описать сущности для чата JPA

Есть задача реализовать чат на бэке.

Спроектировал вот такую базубаза Не знаю, как правильно описать сущности.

По коду следующее: User имеет лишь Set с Chat, который не знаю как описать для хибера.

Chat выглядит вот так

@Entity
@Table(name = "chats")
public class Chat {

@Id
@GeneratedValue
@Column(name = "id", nullable = false)
private Long id;

//TODO замапить чаты у юзера и тут

private UserModel UserOne;

private UserModel UserTwo;

@OneToMany(
        fetch = FetchType.LAZY,
        cascade = CascadeType.ALL,
        mappedBy = "chat"
)
private Set<ChatMessage> chatMessageSet;
}

ChatMessage

@Entity
@Table(name = "chat_messages")
public class ChatMessage {

@Id
@GeneratedValue
@Column(name = "id", nullable = false)
private Long id;

@ManyToOne(
        fetch = FetchType.LAZY
)
@JoinColumn(name = "user_id")
private UserModel user;

@ManyToOne(
        fetch = FetchType.LAZY
)
@JoinColumn(name = "chat_id")
private Chat chat;

@Column(name = "text_msg", nullable = false)
private String textMsg;

@Column(name = "created_time", nullable = false)
private LocalDate createdTime;
}

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