Вашият JPA @Id
не е необходимо да съответства на колоната(ите) на базата данни PK. Докато е уникален, това е всичко, което има значение.
От https://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing :
Тъй като вашата колона за автоматично увеличение е гарантирана, че е уникална, просто използвайте gender_key като @ID
и карта 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