在从hibernate 3.6迁移到4.3期间,生成的创建脚本失败,因为 连接列的列长度不正确。
答案 0 :(得分:0)
我重写了TableBinder类,改变了
while ( mappedByColumns.hasNext() ) {
Column column = (Column) mappedByColumns.next();
columns[0].overrideFromReferencedColumnIfNecessary( column );
columns[0].linkValueUsingAColumnCopy( column, value );
}
到 - >
while ( mappedByColumns.hasNext() ) {
Column column = (Column) mappedByColumns.next();
int length = column.getLength();
if (columns[0].getMappingColumn().getLength()!=255)
column.setLength(columns[0].getMappingColumn().getLength());
columns[0].overrideFromReferencedColumnIfNecessary( column );
columns[0].linkValueUsingAColumnCopy( column, value );
}
它不是一个完美的解决方案,但它完全适合我