mirror of
https://github.com/nagisa77/OpenIsle.git
synced 2026-02-08 16:11:05 +08:00
42 lines
1011 B
Java
42 lines
1011 B
Java
package com.openisle.model;
|
|
|
|
import jakarta.persistence.*;
|
|
import lombok.Getter;
|
|
import lombok.NoArgsConstructor;
|
|
import lombok.Setter;
|
|
|
|
import java.util.HashSet;
|
|
import java.util.Set;
|
|
|
|
@Entity
|
|
@Getter
|
|
@Setter
|
|
@NoArgsConstructor
|
|
@Table(name = "drafts", uniqueConstraints = {
|
|
@UniqueConstraint(columnNames = {"author_id"})
|
|
})
|
|
public class Draft {
|
|
@Id
|
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
|
private Long id;
|
|
|
|
private String title;
|
|
|
|
@Column(columnDefinition = "LONGTEXT")
|
|
private String content;
|
|
|
|
@ManyToOne(fetch = FetchType.LAZY, optional = false)
|
|
@JoinColumn(name = "author_id")
|
|
private User author;
|
|
|
|
@ManyToOne(fetch = FetchType.LAZY)
|
|
@JoinColumn(name = "category_id")
|
|
private Category category;
|
|
|
|
@ManyToMany(fetch = FetchType.LAZY)
|
|
@JoinTable(name = "draft_tags",
|
|
joinColumns = @JoinColumn(name = "draft_id"),
|
|
inverseJoinColumns = @JoinColumn(name = "tag_id"))
|
|
private Set<Tag> tags = new HashSet<>();
|
|
}
|