diff options
Diffstat (limited to 'src/main/java/com/blog/web/models/UserEntity.java')
| -rw-r--r-- | src/main/java/com/blog/web/models/UserEntity.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/main/java/com/blog/web/models/UserEntity.java b/src/main/java/com/blog/web/models/UserEntity.java new file mode 100644 index 0000000..2dfb036 --- /dev/null +++ b/src/main/java/com/blog/web/models/UserEntity.java @@ -0,0 +1,32 @@ +package com.blog.web.models; + +import jakarta.persistence.*; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +import java.util.ArrayList; +import java.util.List; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Entity(name = "users") +// Named UserEntity to prevent conflicts with Java User object +public class UserEntity { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + private String username; + private String email; + private String password; + @ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL) + @JoinTable( + name = "user_roles", + joinColumns = {@JoinColumn(name = "user_id", referencedColumnName = "id")}, + inverseJoinColumns = {@JoinColumn(name = "role_id", referencedColumnName = "id")} + ) + private List<Role> roles = new ArrayList<>(); +} |
