JPA @Id
データベースのPK列と一致する必要はありません。それがユニークである限り、それが重要です。
https://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing から :
自動インクリメント列は一意であることが保証されているため、@ID
としてgender_keyを使用するだけです。 通常の列としてIDをマップします。
@Entity
@Table(name = "employee")
public class employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int genderKey;
@Column
private int id;
}
正直なところ、あなたのスキーマは紛らわしいと思います。
また、以下を読むことをお勧めします:
https://www.javatpoint.com/java-naming-conventions