JPA/Hibernateでテーブル名をオーバーライドして、すべてのプロジェクトエンティティに共通のプレフィックスを追加することはできますか?たとえば、すべてのJBPM 5テーブルに接頭辞「JBPM5_」を付けることができます。受け入れ答えのためのJPA(Hibernate)とカスタムテーブルプレフィックス
例:一度にすべてのテーブルの名前を変更する
public class JBPM5NamingStrategy extends ImprovedNamingStrategy {
public String classToTableName(String className) {
return StringHelper.unqualify(className);
}
public String propertyToColumnName(String propertyName) {
return propertyName;
}
public String tableName(String tableName) {
return "JBPM5_" + tableName;
}
public String columnName(String columnName) {
return columnName;
}
public String propertyToTableName(String className, String propertyName) {
return "JBPM5_" + classToTableName(className) + '_'
+ propertyToColumnName(propertyName);
}
}
あなたは '@ Table'アノテーションから離れていますか? –
はい、表の注釈は別です。私は実際にサードパーティのプロジェクトを意味していたので、設定だけが実行可能です(私はコンパイルされたJavaソースに触れることはできません)。 –
また、個々のクラスのアノテーションを使用してサイト全体のポリシーを実装するのは面倒でエラーが発生しやすい –