1

我正在使用 Hibernate 工具将我的数据库反向工程为实体对象。为此,我使用带有报复策略的 eclipse Hibernate 代码生成来自定义我的类和字段名称,因为我的数据库表使用了我需要删除的前缀。

问题:如何在我的 ReverseEngineering java 文件中记录语句。我无法让日志记录工作。

这是我的 ReverseEngineering 课程的一部分:

public class HibernateReverseEngineering extends DelegatingReverseEngineeringStrategy {

private static final org.slf4j.Logger Logger = org.slf4j.LoggerFactory.getLogger(HibernateReverseEngineering.class);

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

@Override
public String columnToPropertyName(TableIdentifier table, String column) {
    if (column.length() > 5) {
        Logger.trace("Property name: changing from column name");
        return column.substring(5).toLowerCase();
    } else {
        Logger.trace("Property name: default from column name");
        return super.columnToPropertyName(table, column);
    }
}
4

1 回答 1

1

有很多地方可能会出错,但是我在休眠和日志记录方面遇到了问题,您的情况也可能出现这种问题。Hibernate pom 声明了对 slf4j 的依赖,但不依赖于 slf4j 日志接口的实现。因此,您最终得到了一个日志接口,但没有实现!

在您的依赖项中包含以下内容:

org.slf4j:slf4j-simple:1.7.5
于 2014-03-10T21:36:49.337 回答