JPA 无法解析列/IntelliJ

新手上路,请多包涵

我正在尝试使用 Hibernate JPA 实现映射一些 Java 类。我的问题是我不能使用硬编码字符串作为列名称。您可以在下图中看到我收到的错误消息。

在此处输入图像描述

我正在使用 OpenJPA 作为我的默认 JPA 提供程序并且已经尝试更改它。

IntelliJ 版本 14.0.3

问候,

原文由 pichlbaer 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 713
2 个回答

您必须将您的数据源(首先在数据库视图中创建一个数据源——也就是您真正的 JDBC 数据库连接)与持久性单元或会话工厂 (hibernate.cfg.xml) 相关联。

按照以下步骤操作,警告将消失:

  1. 打开持久性工具窗口(视图 | 工具窗口 | 持久性)。
  2. 右键单击必要的模块、持久性单元或会话工厂,然后在上下文菜单中选择分配数据源。
  3. 在打开的“分配数据源”对话框中,单击“数据源”字段并选择必要的数据源。 (要删除与数据源的关联,请选择 。)

请参阅此处: 将数据源与会话工厂和持久性单元相关联

原文由 panagiotis 发布,翻译遵循 CC BY-SA 4.0 许可协议

对于那些只想禁用此检查的人,请转到 Intellij IDEA -> 首选项 -> 搜索“ 注解中未解析的数据库引用”并取消选中它。 在此处输入图像描述 (macOS Mojave 和 Intellij Ultimate 2019.3)

这将禁用检查并删除 @Column 注释上的所有“无法解析列…”错误。 Intellij 将停止检查数据库表中是否存在 String 列名称。风险自负。

原文由 yetsun 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题