可用版本:Dev (3.21) | 最新 (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

将 jOOQ 与 JPA 结合使用

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

这些部分将展示如何将 jOOQ 与 JPA 的原生查询 API 结合使用,以使用 Java EE 标准获取元组或托管实体。

这些部分的目的是描述如何在您有充分理由这样做的情况下执行此操作。 但是,在大多数情况下,最好直接使用 jOOQ 执行查询,尤其是在您想要使用 jOOQ 更高级功能时。此博客文章说明了为什么最好直接使用 jOOQ 执行查询的各种原因

在以下所有部分中,让我们假设我们有以下 JPA 实体来对我们的数据库建模

@Entity
@Table(name = "book")
public class JPABook {

    @Id
    public int id;

    @Column(name = "title")
    public String title;

    @ManyToOne
    public JPAAuthor author;

    @Override
    public String toString() {
        return "JPABook [id=" + id + ", title=" + title + ", author=" + author + "]";
    }
}

@Entity
@Table(name = "author")
public class JPAAuthor {

    @Id
    public int id;

    @Column(name = "first_name")
    public String firstName;

    @Column(name = "last_name")
    public String lastName;

    @OneToMany(mappedBy = "author")
    public Set<JPABook> books;

    @Override
    public String toString() {
        return "JPAAuthor [id=" + id + ", firstName=" + firstName +
               ", lastName=" + lastName + ", book size=" + books.size() + "]";
    }
}

反馈

您对此页面有任何反馈吗? 我们很乐意听取您的意见!

The jOOQ Logo