使用 Hibernate 公式从另一个表中选择实体

2023-11-26

我正在尝试使用 Hibernate 的 @Formula 注释从另一个表中检索实体。给出以下代码:

@Entity
class Test {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", updatable = false, nullable = false)
    private Long id = null;

    // ...

    @Formula("(SELECT r FROM Result r WHERE test_id = id AND resultDate = (SELECT MAX(resultDate) FROM Result WHERE test_id = id))")
    private Result lastestResult;

    // ...

    public Result getLatestResult() {
        return latestResult;
    }

    // ...
}

结果类如下所示:

@Entity
class Result {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", updatable = false, nullable = false)
    private Long id = null;

    @ManyToOne
    private Test test;

    // ...
}

但在尝试加载测试实体时,我收到错误“未找到列“TEST0_.RESULTDATE””。我还尝试了一些涉及 @JoinFormula 注释的其他方法,但没有成功。我也遇到过这个答案,这似乎表明我正在做的事情应该有效,但事实并非如此。我该如何进行这项工作?


所以,我找到了这个特定问题的解决方案。上的注释latestResult属性如下:

@ManyToOne
@JoinColumnsOrFormulas({
    @JoinColumnOrFormula(formula=@JoinFormula(value="(SELECT r.id FROM Result r WHERE resultDate = (SELECT MAX(sqr.resultDate) FROM Result sqr WHERE sqr.test_id = id))", referencedColumnName="id")),
})
private Result latestResult;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Hibernate 公式从另一个表中选择实体 的相关文章

随机推荐

  • Android:我可以在服务中使用 Google Analytics吗?

    我有一个应用程序 大部分时间作为服务在后台运行 网上有很多关于如何使用 Google Analytics API 和 EasyTracker 库来跟踪多个活动的示例和教程 但没有一个示例和教程解释了如何在服务中使用 Google Analy
  • Chrome 和 Firefox 中带有换行符的文本区域的最大长度验证不同

    问题是 Firefox 将换行符视为 1 n 字符 而 Chrome 将它们视为 2 r n 这就是我得到的textarea with maxlength 10 这是10字符为Firefox 1234 5 6 7 这是10字符为Chrome
  • PHP 中唯一的临时文件名?

    我需要将一些文件转换为 PDF 然后将它们附加到电子邮件中 我在电子邮件方面使用 Pear Mail 这很好 大多数情况下仍在解决一些问题 但作为此过程的一部分 我需要创建临时文件 现在我可以使用临时南 函数 但听起来它在文件系统上创建了一
  • Rails 3.2.2 不执行 rjs

    我正在关注这本书使用 Rails 进行实用敏捷 Web 开发第 4 版 但我使用的是 Rails 3 2 2 而不是书中推荐的 3 0 5 ruby v ruby 1 9 3p125 2012 02 16 i686 linux rails
  • Vim textwidth 逗号缩进问题

    如果我在 Vim 中设置以下选项 set textwidth 80 文本将在 80 个字符处中断 这可行 但问题是如果逗号 位于行尾 Vim 会缩进下一行 我可以做什么来避免这种行为 您可能启用了 C 风格缩进 set nocindent应
  • 如何在 spring mvc 中的操作之前发送响应

    假设我的 spring 控制器函数接收大量数据 鉴于数据结构正确 我想返回 200 OK 并且在那之后我想执行处理 这可能需要一段时间 据我了解 发送响应的唯一方法是return命令 但我不想在响应发送时结束该功能 还有其他方法可以在函数中
  • 加载/存储宽松原子变量和普通变量有什么区别?

    正如我从测试用例中看到的 https godbolt org z K477q1 生成的程序集加载 存储原子宽松与普通变量相同 ldr和str 那么 宽松原子变量和普通变量有什么区别吗 区别在于正常的加载 存储不是保证是无泪的 而轻松的原子读
  • 计算矩阵的零空间

    我正在尝试求解 Ax 0 形式的一组方程 A 是已知的 6x6 矩阵 我使用 SVD 编写了以下代码来获取在一定程度上有效的向量 x 答案大致正确 但不足以对我有用 我怎样才能提高计算的精度 将 eps 降低到 1 e 4 以下会导致函数失
  • 选项的单击事件在 IE 中不起作用

    我有一个多选标签 我需要编写它的选项的 onclick 函数 因为我需要获取最后单击的选项的值 但是当我编写以下内容时 multiple select option click function var val this val alert
  • 约束成员模板的外线定义有哪些规则?

    考虑以下code template
  • 显示 MySQL 中日期时间在下一小时内的行

    我总是在处理复杂的 SQL 查询时遇到麻烦 这就是我所拥有的 query SELECT id name info date time FROM acms events WHERE date time DATE SUB NOW INTERVA
  • UINavigationBar 和新的 iOS 5+ 外观 API - 如何提供两个背景图像?

    我想利用新的 iOS 5 外观 API 为我的应用程序中的所有 UINavigationBar 实例提供自定义背景图像 要做到这一点 就像这样简单 UINavigationBar appearance setBackgroundImage
  • 从 localStorage 中删除项目

    我正在尝试从本地存储中删除单个项目 我正在使用 localStorage 来存储列表视图中选定的列表项 我附加了用于从本地存储中删除所选项目的复选框 但是 当我删除选定的复选框时 它不会正确删除 就像我选择一个复选框时 它删除的两个或三个项
  • Java中如何从HTTP请求中获取JSON对象

    我现在尝试使用 Java cord 中的 HTTP 请求获取 JSON 对象 我想知道如何在下面的代码中获取响应或 JSON 对象 请告诉我 在这个程序中 我尝试获取文章 纽约 的维基百科类别 String requestURL http
  • Laravel 4 自定义验证规则 - 在哪里扩展验证器?

    我想制定一个自定义验证规则 我的模型现在看起来像这样 protected rules array first name gt required last name gt required ssn gt required integer mi
  • 如何向 ubuntu 应用程序添加图标

    我已经用Python快速开发了一个用于ubuntu的应用程序 我将其打包并且工作正常 但我找不到如何向我的应用程序添加图标 目前它就像一个空白图标 我用过 Glade 和 gtk 最好的方法是安装一个 命名图标 为此 您的安装脚本会将文件复
  • Python,可变长度位置参数之后的默认关键字参数

    我以为我可以在 Python 2 中的函数调用中的可变长度位置参数之后使用命名参数 但我得到了SyntaxError导入 python 类时 我正在使用以下 get 方法编写 例如 class Foo object def init sel
  • 停止自托管owin服务器时完成当前请求

    我有 OWIN 服务器作为控制台应用程序的一部分 你可以在这里看到主要方法 class Program public static ManualResetEventSlim StopSwitch new ManualResetEventSl
  • 从 UIBezierPath 获取点

    我通过以下方式绘制了上面的 BezierPath 位置是用户触摸屏幕的位置 位置将是图表的最大值 CGPoint 原点 CGPointMake xStart 620 0 CGPoint endpt CGPointMake xEnd 620
  • 使用 Hibernate 公式从另一个表中选择实体

    我正在尝试使用 Hibernate 的 Formula 注释从另一个表中检索实体 给出以下代码 Entity class Test Id GeneratedValue strategy GenerationType IDENTITY Col