Guten Abend Zusammen,
da mir eben schon so wunderbar geholfen wurde hier gleich noch ein kleiner Zusatz. :-)
Ich habe insgesamt 6 Business Objekte die mehr oder weniger heftig miteinander in Verbindung stehen.
Alle erweitern sie die
Klasse "BaseEntity", da alle eine ID brauchen und sich das somit doch anbietet.
Jetzt habe ich nur Probleme / Fragen zum Mapping mit Annotations auf die DB.
Hier meine
BaseEntity:
Code:
@Entity
@Inheritance(strategy=InheritanceType.JOINED)
public abstract class BaseEntity {
private Integer id;
public void setId(Integer id) {
this.id = id;
}
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public Integer getId() {
return id;
}
@Transient
public boolean isNew() {
return (this.id == null);
}
}
Und hier noch ein Beispiel
Business Objekt:
Code:
@Entity
public class Competition extends BaseEntity {
private String name;
private String description;
/*
* default constructor
*/
public Competition() {
}
/*
* Getter and Setter
*/
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
Naja ... however. Also das ganze ist lauffähig ... allerdings generiert er mir bei der DB Erstellung zu Beginn die
Tabellen "baseentitiy" und "
competition". Wie kann ich verhindern, dass er die Tabelle "
baseentity" anlegt? Ist das überhaupt möglich?
Gehe ich überhaupt richtig an die Sache heran ... oder sollte ich mit
@Embedded und
@Embeddable arbeiten?
Hat da jemand vielleicht mal ein gutes Beispiel oder eine Best Pratice für mich?
Vielen Dank schon mal für eure Hilfe.
Viele Grüße
Oliver