JPA @Id
của bạn không cần phải khớp với (các) cột PK của cơ sở dữ liệu. Miễn là nó là duy nhất thì đó là tất cả những gì quan trọng.
Từ https://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing :
Vì cột tăng tự động của bạn được đảm bảo là duy nhất nên bạn chỉ cần sử dụng giới_tính làm @ID
và id bản đồ như một cột bình thường.
@Entity
@Table(name = "employee")
public class employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int genderKey;
@Column
private int id;
}
Thành thật mà nói, tôi sẽ thấy giản đồ của bạn khó hiểu.
Tôi cũng khuyên bạn nên đọc những điều sau:
https://www.javatpoint.com/java-naming-conventions