This is my person class.
@Entity
@Table(name = "Person")
public class Person {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "PersonID")
    private Long personID;
    @Column(name = "Name")
    @Convert(converter = NameConverter.class)
    private Name name;
    @Column(name = "Geburtsdatum")
    private LocalDate geburtsdatum;
    @Column(name = "Strasse")
    private String strasse;
    @Column(name = "Hausnummer")
    private String hausnummer;
    @Column(name = "PLZ")
    private String plz;
    @Column(name = "Ort")
    private String ort;
    @Column(name = "EMail")
    private String email;
    @Column(name = "Telefonnummer")
    private String telefonnummer;
    protected Person() {}
    public Person(Name name, LocalDate geburtsdatum, String strasse, String hausnummer, String plz, String ort, String email, String telefonnummer) {
        this.name = name;
        this.geburtsdatum = geburtsdatum;
        this.strasse = strasse;
        this.hausnummer = hausnummer;
        this.plz = plz;
        this.ort = ort;
        this.email = email;
        this.telefonnummer = telefonnummer;
    }
    @Override
    public String toString() {
        return String.format("PersonID: %d\nName: %s\nGeburtsdatum: %s\nE-Mail: %s\nTelefonnummer: %s\nAdresse: %s %s, %s %s\n",personID,name.getFullName(),geburtsdatum,email,telefonnummer,strasse,hausnummer,plz,ort);
    }
    /* Getter & Setters */
}
This is my Mitglied class which should be based of the person.
@Entity
@Table(name = "Mitglied")
public class Mitglied extends Person {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "MitgliedID")
    private Long mitgliedID;
    @Column(name = "ZPS")
    private String zps;
    @Column(name = "ZPSNummer")
    private String zpsNummer;
    @Column(name = "Eintrittsdatum")
    private LocalDate eintrittsDatum;
    @Column(name = "Austrittsdatum")
    private LocalDate austrittsDatum;
    @Column(name = "DWZ")
    private String dwz;
    @Column(name = "Elo")
    private String elo;
    @Column(name = "FIDETitel")
    private String fideTitel;
    protected Mitglied() {}
    public Mitglied(Name name, LocalDate geburtsdatum, String strasse, String hausnummer, String plz, String ort, String email, String telefonnummer, String zps, LocalDate eintrittsDatum, LocalDate austrittsDatum, String dwz, String elo, String fideTitel) {
        super(name, geburtsdatum, strasse, hausnummer, plz, ort, email, telefonnummer);
        this.zps = zps;
        this.eintrittsDatum = eintrittsDatum;
        this.austrittsDatum = austrittsDatum;
        this.dwz = dwz;
        this.elo = elo;
        this.fideTitel = fideTitel;
    }
    
    /* Getter & Setters */
}
I'm having the problem that if the Mitglied inherits from the Person than i got 2 unique IDs... My guess would be to fix my problem i could change the Person class so it would not be a table anymore, but i don't really know how i would make my Mitglied Table have a column for each value.
 
     
    