Добавить столбец в JoinTableJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Добавить столбец в JoinTable

Сообщение Anonymous »

У меня есть объект, который создает комментарии к таблице, а также таблицу comment_unreads.

Код: Выделить всё

@Entity
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Comments {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private Long quotationId;

@ManyToOne
@JoinColumn(name = "uid", referencedColumnName = "uid", nullable = false)
private UserProfile user;

@Size(min = 5, max = 300)
private String comment;

@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "comment_likes", joinColumns = @JoinColumn(name = "comment_id"), inverseJoinColumns = @JoinColumn(name = "user_id"))
private Set likedBy = new HashSet();

@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "comment_unreads", joinColumns = @JoinColumn(name = "comment_id"), inverseJoinColumns = @JoinColumn(name = "user_profile_id"))
private Set readBy = new HashSet();

@CreationTimestamp
private LocalDateTime createdAt;

// Update read status
public void markAsReadBy(UserProfile user) {
this.readBy.remove(user);
}

// Method to populate users who have commented on the same quotation
public void populateReadBy(Set allUsersForQuotation, Long uid) {
allUsersForQuotation.forEach(user -> {
// Exclude the user who created the comment
if (user.getUser().getUid().equals(uid)) {
this.readBy.remove(user);
}
else {
this.readBy.add(user);
}
});
}
}
Каждый раз, когда пользователь читает комментарий, он будет удален из таблицы comment_unreads. Однако я хочу иметь метод, который запускается каждый час и отправляет электронное письмо всем пользователям, которые еще не видели свои комментарии. Поскольку я не хочу, чтобы пользователь получал одно и то же электронное письмо каждый час, следует отметить, что пользователь уже получил электронное письмо.
Мой вопрос: таблица comment_unreads содержит столбцы comment_id и user_profile_id, но как я могу добавить к ней столбец email_sent?

Подробнее здесь: https://stackoverflow.com/questions/793 ... -jointable
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»