如何使用Hibernate在多对多关系中获取数据

时间:2019-08-15 21:48:13

标签: java spring hibernate spring-data-jpa spring-data

假设,我有休眠状态的下一个模型结构:

现金模板实体:

@Entity
@Table(name = "encashment_template")
public class EncashmentTemplate {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "description")
    private String description;

    @ManyToMany(cascade = CascadeType.ALL)
    @JoinTable(
            name = "template_nominals",
            joinColumns = @JoinColumn(name = "template_id"),
            inverseJoinColumns = @JoinColumn(name = "nominal_id")
    )
    private Set<Nominal> nominalSet = new HashSet<>();

    //... getters and setters
}

名义实体:

@Entity
@Table(name = "nominal")
public class Nominal {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "nominal")
    private String nominal;

    @Column(name = "code")
    private Integer code;

    @ManyToMany(mappedBy = "nominalSet")
    Set<EncashmentTemplate> encashmentTemplateSet = new HashSet<>();

    // ... getters and setters
}

换句话说,我有许多带有标称集的模板,而我也有带有标称集的模板(多对多关系)。

在我的项目中,我使用Spring Data进行数据处理。

问题是:如何获得具有特定标称集的所有模板?不管如何(JPQL,spring存储库和其他工具)。谢谢你提前。

0 个答案:

没有答案