1
我遇到了繼承和索引名稱生成的問題。例如: 多個抽象類,它們是相互繼承的。休眠標識符名稱對於MySQL索引來說太長了
@Entity
public abstract class LongClassName1 implements Serializable {
...
@Index(name = "externalIdIndex")
String externalId;
...
}
@Entity
public abstract class LongClassName2 extends LongClassName1 { ... }
@Entity
public abstract class LongClassName3 extends LongClassName2 { ... }
@Entity
public abstract class LongClassName4 extends LongClassName3 { ... }
@Entity
public class LongClassName5 { ... }
現在Hibernate會像LongClassName5LongClassName4LongClassname3LongClassname2externalIdIndex
的指數導致的錯誤消息像Identifier name 'LongClassName5LongClassName4LongClassname3LongClassname2externalIdIndex' is too long
我試過多次休眠命名策略,並已覆蓋自己的方法,但至今沒有奏效。
我正在使用JBoss 7.1.1附帶的休眠版本。
自動生成的主鍵索引是沒有問題的。
任何想法接下來我可以做什麼?
嗨,我不想爲每個表格明確地設置索引,只爲抽象類。 – gesocks