1. 程式人生 > >JPA如何實現表自關聯

JPA如何實現表自關聯

比如要實現如下自關聯效果

只需要註解  @OneToOne 即可,其他的不加

ex:

@Entity
@Table(name="menu")
public class Menu {
  @Id
  @GeneratedValue
  private long id;
  private String name;
  private String url;
  private String icon;
  @OneToOne
  private Menu parent;

  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public String getUrl() {
    return url;
  }

  public void setUrl(String url) {
    this.url = url;
  }

  public String getIcon() {
    return icon;
  }

  public void setIcon(String icon) {
    this.icon = icon;
  }

  public Menu getParent() {
    return parent;
  }

  public void setParent(Menu parent) {
    this.parent = parent;
  }

  @Override
  public String toString() {
    return "Menu{" +
            "id=" + id +
            ", name='" + name + '\'' +
            ", url='" + url + '\'' +
            ", icon='" + icon + '\'' +
            ", parent=" + parent +
            '}';
  }
}