2013-10-17 38 views
1

我正在使用Hibernate工具将我的数据库反向工程到实体对象。为此,我使用带有报仇策略的eclipse Hibernate Code Generation来自定义我的类和字段名称,因为我的数据库表使用了我需要删除的前缀。休眠反向工程与ReverseEngineeringStrategy

问题:我如何在我的ReverseEngineering java文件中使用日志声明。 我无法使日志工作。

这是我的逆向工程类的部分:

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); 
    } 
} 

回答

1

有许多地方,这些都可能出错,但我有休眠和记录可能存在于你的情况有问题,太。 Hibernate pom声明了对slf4j的依赖关系,但不是对slf4j日志接口的实现。因此,你最终得到一个日志界面,但没有实现!

包括在你的依赖以下:

org.slf4j:slf4j-simple:1.7.5 
+0

我有类似的问题,以OP,但加入SLF4J,简单到我的聚甲醛也没解决问题。你提到许多其他地方伐木可能出错。你能为我和OP详细说明吗? – luke