Sie müssen den Tabellennamen maskieren, wenn Sie reservierte Schlüsselwörter verwenden. In JPA 1.0 gibt es keinen standardisierten Weg und die Hibernate-spezifische Lösung ist die Verwendung von Backticks:
@Entity
@Table(name="`User`")
public class User {
...
}
In JPA 2.0 sieht die standardisierte Syntax so aus:
@Entity
@Table(name="\"User\"")
public class User {
...
}
Referenzen
- Hibernate Core-Dokumentation
- 5.4. SQL-Bezeichner in Anführungszeichen
- JPA 2.0-Spezifikation
- 2.13 Benennung von Datenbankobjekten