//cfg是Configuration, className是持久化类名
PersistentClass classMapping = cfg.getClassMapping(Class.forName(className));String tableName = classMapping.getTable().getName();// 注意:此方法未经证实可用
String columnName = classMapping.getTable().getColumn(
classMapping.getProperty(propertyName).getColumnSpan()).getName();// 此方法已证实可用。
// 在hiberantte一个属性可能对应多个字段,很bt
for (Iterator it = classMapping.getProperty(propertyName).getColumnIterator(); it.hasNext();)
{
columnName = ((Column)it.next()).getName();
//取第一个就够了
break;
}// 注意:主键不能用getProperty方法获得!
// 因此要用PersistentClass.getIdentifier()和相关方法// last,更多使用细节,请自行阅读hibernate的api文档。
PersistentClass classMapping = cfg.getClassMapping(Class.forName(className));String tableName = classMapping.getTable().getName();// 注意:此方法未经证实可用
String columnName = classMapping.getTable().getColumn(
classMapping.getProperty(propertyName).getColumnSpan()).getName();// 此方法已证实可用。
// 在hiberantte一个属性可能对应多个字段,很bt
for (Iterator it = classMapping.getProperty(propertyName).getColumnIterator(); it.hasNext();)
{
columnName = ((Column)it.next()).getName();
//取第一个就够了
break;
}// 注意:主键不能用getProperty方法获得!
// 因此要用PersistentClass.getIdentifier()和相关方法// last,更多使用细节,请自行阅读hibernate的api文档。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货