在进行逆向工程时,可以使用自定义逆向工程策略。引用文档:
可以实施用户策略。这种策略必须实现
org.hibernate.cfg.reveng.ReverseEngineeringStrategy.
建议使用
DelegatingReverseEngineeringStrategy
and 提供一个公共构造函数,该构造函数将另一个
ReverseEngineeringStrategy
作为参数。这将允许您仅实现相关方法并提供回退策略。将所有以“PK”结尾的列名转换为名为“id”的属性的自定义委托策略示例。
public class ExampleStrategy extends DelegatingReverseEngineeringStrategy {
public ExampleStrategy(ReverseEngineeringStrategy delegate) {
super(delegate);
}
public String columnToPropertyName(TableIdentifier table, String column) {
if(column.endsWith("PK")) {
return "id";
} else {
return super.columnToPropertyName(table, column);
}
}
}
在您的情况下,您可能想要实施
public String tableToClassName(TableIdentifier tableIdentifier) {
return delegate==null?null:delegate.tableToClassName(tableIdentifier);
}
ADDRESSES
从表名( => )生成的“去复数”类Address
。
但遗憾的是,如果用户碰巧有任何逆向工程策略,NetBeans Hibernate 逆向工程向导 不 提供选项(如果时间允许,这是为 NetBeans 7.0 计划的一项增强功能)。
因此,如果您想使用自定义策略,则必须使用 Ant 或 Maven。目前这在 NetBeans 中是不可能的。