Hibernate 3到4迁移(连接列长度)



在从hibernate 3.6迁移到4.3的过程中,生成的创建脚本失败,因为联接列的列长度不正确。

i覆盖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 );              
    }

这不是一个完美的解决方案,但它对我来说是完全有效的

最新更新