【问题标题】:Referencing a join table to a view将连接表引用到视图
【发布时间】:2020-02-15 08:08:14
【问题描述】:

我有一个实体 MorningMinutesNote,它使用连接表 Morning_minutes_note_item_type 与 MorningMinutesNoteType 具有@ManyToMany 关系。

@Entity
@Table(name = "morning_minutes_note", schema = "public")
public class MorningMinutesNote {
  private List<MorningMinutesNoteType> itemTypes = new ArrayList<MorningMinutesNoteType>();

  @ManyToMany
  @JoinTable(name="morning_minutes_note_item_type",
        joinColumns=@JoinColumn(name="morning_minutes_note_id",updatable=false,insertable=false),
        inverseJoinColumns=@JoinColumn(name="item_type_id",updatable=false,insertable=false))
  public List<MorningMinutesNoteType> getItemTypes() {
    return itemTypes;
  }

CREATE TABLE morning_minutes_note_item_type(
  morning_minutes_note_item_type_id BIGINT PRIMARY KEY DEFAULT NEXTVAL('morning_minutes_note_item_type_id_seq'),
  morning_minutes_note_id BIGINT NOT NULL,
  item_type_id BIGINT NOT NULL
);

我创建了一个视图表 view_morning_minutes_note,它使用morning_minutes_note 作为主表。如何引用 MorningMinutesNoteType 列表 到视图表,这样我也可以从 ViewMorningMinutesNote 中获取列表。我不知道这是否可能,但我尝试添加 MorningMinutesNote 的确切注释 到 ViewMorningMinutesNote 但它什么也没得到。

@Entity
@org.hibernate.annotations.Entity(selectBeforeUpdate = false,dynamicInsert = true, dynamicUpdate = true)
@Table(name = "view_morning_minutes_note", schema = "public")
public class ViewMorningMinutesNote{

  private List<MorningMinutesNoteType> itemTypes = new ArrayList<>();

【问题讨论】:

    标签: java hibernate jpa orm entity-relationship


    【解决方案1】:

    如果您需要直接访问JoinTable,您可以使用FluentJPA 功能来公开join table for queries

    【讨论】:

      猜你喜欢
      • 2011-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多