【问题标题】:Hibernate reverse engineering with ReverseEngineeringStrategy使用 ReverseEngineeringStrategy 进行休眠逆向工程
【发布时间】:2013-10-17 14:57:27
【问题描述】:

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

问题:如何在我的 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);
    }
}

【问题讨论】:

    标签: hibernate logging


    【解决方案1】:

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

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

    org.slf4j:slf4j-simple:1.7.5
    

    【讨论】:

    • 我遇到了与 OP 类似的问题,但在我的 pom 中添加 slf4j-simple 并没有解决问题。您提到许多其他地方的日志记录可能会出错。你能为我和OP详细说明一下吗?
    猜你喜欢
    • 2010-12-24
    • 2016-11-23
    • 2017-12-18
    • 2016-08-18
    • 2011-08-08
    • 2014-08-11
    • 2012-09-05
    • 2012-10-27
    • 1970-01-01
    相关资源
    最近更新 更多