Hallo Leute,
da ist eine grobe ausschnitt aus der Klassen
Warum wird ADMIN Tabelle dargestellt und Customer nicht?
mysql> show tables;
±--------------------------+
| Tables_in_vehicle_booking |
±--------------------------+
| ADMIN |
±--------------------------+
1 row in set (0,00 sec)
@MappedSuperclass
@Inheritance(strategy = InheritanceType.JOINED)
public abstract class User {
@Id
@Column( name = "USERNAME")
private String username;
}
@Table(name = "ADMIN")
public class Admin extends User{
public Admin(String username, String password, Date regdate){
super(username, password,regdate);
}
}```
hier @Inheritance(strategy = InheritanceType.JOINED) weil Customer ist Oberklasse von Owner und VehicleUser. Dass Customer Payment object enthält schaue ich später an wie 1 zu 1 Beziehung in Hibernate kennzeichnen ist. Ich habe noch eine Frage Inclusive owners und vehicleUsers brauche ich doch nicht dass ich @Id reinschreibe, aber sonst bei Vehicle und Booking brauche ich schon oder? Denke ich in diese Zeilen richtig?
@Inheritance(strategy = InheritanceType.JOINED)
@Entity
@Table(name = „CUSTOMER“)
public class Customer extends User {
@Column(name = "PAYMENT")
private Payment payment;
@Column(name = "FAMILYNAME")
private String familyname;
Danke euch
*** Edit ***
Warum wird von mir verlangt dass ich Payment als enum definiere?
warum darf ich in User @Id ohne dass unten Id_Atributt steht definieren und in Payment nicht? wegen @Id bekomme ich Fehler dass ich Payment als enum definieren muss;
```@MappedSuperclass
@Inheritance(strategy = InheritanceType.JOINED)
public abstract class Payment {
@Id
}
@Table(name = "BANK")
public class Bank extends Payment{
@Column(name = "BANKNAME")
private String bank;
@Column(name = "ACCOUNT")
private String account;
}
```
@Entity
@Table(name = „CreditCard“)
public class CreditCard extends Payment{
@Column(name = „NUMBER“)
private String number;
@Column(name = „BRAND“)
private String brand;
@Column(name = „VALIDITY“)
private Date validity;
}
es wird immer noch nur Admin Tabelle gezeigt