如何使hibernate逆向工程保持与数据库表列名完全相同的对象字段名?

时间:2016-09-08 12:36:59

标签: java hibernate

我遇到了Hibernate逆向工程我的postgres数据库的问题。当hibernate遇到一个具有_字符的列(如mycolumn_gb)时,它会删除下划线,并将下一个后续字符大写:mycolumnGb

如何强制Hibernate避免任何此类更改?

1 个答案:

答案 0 :(得分:0)

1)创建DelegatingReverseEngineeringStrategy的子类,覆盖columnToPropertyName方法。

package com.example;

import org.hibernate.cfg.reveng.DelegatingReverseEngineeringStrategy;
import org.hibernate.cfg.reveng.ReverseEngineeringStrategy;
import org.hibernate.cfg.reveng.TableIdentifier;

public class SampleReverseEngineeringStrategy extends DelegatingReverseEngineeringStrategy {

    public SampleReverseEngineeringStrategy(ReverseEngineeringStrategy delegate) {
        super(delegate);
    }

    @Override
    public String columnToPropertyName(TableIdentifier table, String column) {
        return column;
    }
}

2)设置为reveng. strategy

enter image description here

参考: