springJdbctemplate crud アプリケーションで、カスタム フィールドを使用して新しいカスタム テーブルを作成するオプションをユーザーに提供したい。データをxmlにダンプすることを提案する人もいます。
ありがとう
springJdbctemplate crud アプリケーションで、カスタム フィールドを使用して新しいカスタム テーブルを作成するオプションをユーザーに提供したい。データをxmlにダンプすることを提案する人もいます。
ありがとう
次の方法でユーザー テーブルのメタデータを定義する必要があります。
ドメイン クラス(疑似コード):
class UserTableMetadata {
String tableName;
// List of personalisable columns
List<UserTableColumnMetadata> columns;
// List of personalisable indexes
List<UserTableIndexMetadata> indexes;
}
class UserTableColumnMetadata {
// Owner table
UserTableMetadata table;
String columnName;
int jdbcType;
int lenght;
int precision;
boolean nullable;
}
class UserTableIndexMetadata {
// Owner table
UserTableMetadata table;
String indexName;
boolean unique;
boolean primary;
// Index columns
List<UserTableColumnMetadata> columns;
}
ご覧のとおり、ドメイン クラスは固定されていますが、名前、列、およびインデックスを使用して単純なテーブル定義を構築できます。
その後は簡単です - メタデータの処理 -create table
動的な方法で SQL コードを構築します (またはalter table
、ユーザーが列定義を変更し、テーブルが既に存在する場合)。
メタデータは XML だけでなくデータベースにも保存できます。好みや要件に基づいて選択するだけです。
楽しみ!