2023-10-06 15:31:42 +00:00
|
|
|
|
package com.example.springdemo.entities;
|
|
|
|
|
|
2023-11-06 10:39:58 +00:00
|
|
|
|
import com.example.springdemo.entities.RBAC.Roles;
|
2023-10-25 10:10:52 +00:00
|
|
|
|
import jakarta.persistence.*;
|
2023-11-12 08:45:09 +00:00
|
|
|
|
import lombok.*;
|
2023-10-06 15:31:42 +00:00
|
|
|
|
|
2023-11-05 15:16:30 +00:00
|
|
|
|
import java.util.List;
|
|
|
|
|
|
2023-10-06 15:31:42 +00:00
|
|
|
|
//用户类
|
2023-11-12 08:45:09 +00:00
|
|
|
|
@Getter
|
|
|
|
|
@Setter
|
2023-10-06 15:31:42 +00:00
|
|
|
|
@Builder
|
|
|
|
|
@NoArgsConstructor
|
|
|
|
|
@AllArgsConstructor
|
2023-10-07 10:51:01 +00:00
|
|
|
|
@Entity
|
|
|
|
|
@Table(name = "Users")
|
2023-10-06 15:31:42 +00:00
|
|
|
|
public class Users {
|
2023-10-07 10:51:01 +00:00
|
|
|
|
@Id
|
2023-10-25 10:10:52 +00:00
|
|
|
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
2023-11-06 08:56:22 +00:00
|
|
|
|
private Long id;//主键,用户ID
|
2023-10-06 15:31:42 +00:00
|
|
|
|
private String name;//用户姓名
|
2023-11-05 15:16:30 +00:00
|
|
|
|
private String sex;//用户性别
|
2023-10-07 10:51:01 +00:00
|
|
|
|
@Column(name = "phoneNumber")
|
2023-10-06 15:31:42 +00:00
|
|
|
|
private String phoneNumber;//用户联系方式
|
|
|
|
|
private String address;//家庭住址
|
2023-11-05 15:16:30 +00:00
|
|
|
|
|
2023-11-10 08:48:23 +00:00
|
|
|
|
//一个用户可能会有多个订单,关系是一对多
|
2023-11-11 09:18:54 +00:00
|
|
|
|
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
|
|
|
|
|
@JoinTable(name = "users_orders",
|
2023-11-12 08:45:09 +00:00
|
|
|
|
joinColumns = {@JoinColumn(name = "usersId", referencedColumnName = "id")},
|
|
|
|
|
inverseJoinColumns = {@JoinColumn(name = "ordersId", referencedColumnName = "id")})
|
|
|
|
|
private List<Orders> orders;//订单
|
2023-11-06 10:39:58 +00:00
|
|
|
|
|
2023-11-11 09:18:54 +00:00
|
|
|
|
@ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
|
|
|
|
|
@JoinTable(name = "users_roles",
|
2023-11-12 08:45:09 +00:00
|
|
|
|
joinColumns = {@JoinColumn(name = "usersId", referencedColumnName = "id")},
|
|
|
|
|
inverseJoinColumns = {@JoinColumn(name = "rolesId", referencedColumnName = "id")})
|
2023-11-06 10:39:58 +00:00
|
|
|
|
private Roles roles;//RBAC角色
|
2023-10-06 15:31:42 +00:00
|
|
|
|
}
|