|
| 1 | +package com.sponus.sponusbe.domain.bookmark.entity; |
| 2 | + |
| 3 | +import com.sponus.sponusbe.domain.announcement.entity.Announcement; |
| 4 | +import com.sponus.sponusbe.domain.organization.entity.Organization; |
| 5 | +import com.sponus.sponusbe.global.common.BaseEntity; |
| 6 | + |
| 7 | +import jakarta.persistence.Column; |
| 8 | +import jakarta.persistence.ConstraintMode; |
| 9 | +import jakarta.persistence.Entity; |
| 10 | +import jakarta.persistence.FetchType; |
| 11 | +import jakarta.persistence.ForeignKey; |
| 12 | +import jakarta.persistence.GeneratedValue; |
| 13 | +import jakarta.persistence.GenerationType; |
| 14 | +import jakarta.persistence.Id; |
| 15 | +import jakarta.persistence.JoinColumn; |
| 16 | +import jakarta.persistence.ManyToOne; |
| 17 | +import jakarta.persistence.Table; |
| 18 | +import lombok.AccessLevel; |
| 19 | +import lombok.AllArgsConstructor; |
| 20 | +import lombok.Builder; |
| 21 | +import lombok.Getter; |
| 22 | +import lombok.NoArgsConstructor; |
| 23 | + |
| 24 | +@Builder |
| 25 | +@NoArgsConstructor(access = AccessLevel.PROTECTED) |
| 26 | +@AllArgsConstructor(access = AccessLevel.PRIVATE) |
| 27 | +@Getter |
| 28 | +@Entity |
| 29 | +@Table(name = "bookmark") |
| 30 | +public class Bookmark extends BaseEntity { |
| 31 | + |
| 32 | + @Id |
| 33 | + @GeneratedValue(strategy = GenerationType.IDENTITY) |
| 34 | + @Column(name = "bookmark_id") |
| 35 | + private Long id; |
| 36 | + |
| 37 | + @ManyToOne(fetch = FetchType.LAZY) |
| 38 | + @JoinColumn(name = "organization_id", foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) |
| 39 | + private Organization organization; |
| 40 | + |
| 41 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) |
| 42 | + @JoinColumn(name = "announcement_id", foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) |
| 43 | + private Announcement announcement; |
| 44 | +} |
0 commit comments