gpt4 book ai didi

java - 使用 Logger 时出现 Hibernate MappingException

转载 作者:行者123 更新时间:2023-11-29 07:46:34 25 4
gpt4 key购买 nike

我有一个奇怪的错误:我有一个使用 Hibernate 的注释类。一切都很好,直到我开始像这样介绍日志记录:

@Entity
@Table(name = "GROUP_TABLE")
public class Group {
private static final Logger logger = LoggerFactory.getLogger(Group.class);

产生的错误是:

[ERROR] Caused by: org.hibernate.MappingException: Could not determine type for: org.slf4j.Logger, at table: container, for columns: [org.hibernate.mapping.Column(logger)]

以我的理解,静态字段在这种情况下应该没问题。那么为什么 hibernate 会尝试创建一个列“logger”呢?

我的依赖项是 log4j 1.2.17、slf4j-api 1.7.7 和 slf4j-log4j12-1.7.7。

谢谢!

最佳答案

因为您的类被注释为 @Entity@Table,Hibernate 假定所有字段(无论修饰符如何)都映射到数据库列。

Hibernate 不关心你的字段是 static 还是 final(它们是 Java 构造),它只关心它不能映射字段值到数据库列。将您的记录器标记为 @Transient,Hibernate 将忽略它。

关于java - 使用 Logger 时出现 Hibernate MappingException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25144438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com