Авто Генерация сущностей из таблицы MySQL в Groovy - PullRequest
0 голосов
/ 24 декабря 2018

Мне дали скрипт для генерации некоторых сущностей из скрипта MySQL, и я решил автоматически сгенерировать его в IntelliJ ide.

Я создал три pojos из скрипта

package com.mkl.data.entities;


public class Event {

  private long id;
  private long petId;
  private String event;
  private String remark;
  private java.sql.Date date;


  public long getId() {
    return id;
  }

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


  public long getPetId() {
    return petId;
  }

  public void setPetId(long petId) {
    this.petId = petId;
  }


  public String getEvent() {
    return event;
  }

  public void setEvent(String event) {
    this.event = event;
  }


  public String getRemark() {
    return remark;
  }

  public void setRemark(String remark) {
    this.remark = remark;
  }


  public java.sql.Date getDate() {
    return date;
  }

  public void setDate(java.sql.Date date) {
    this.date = date;
  }

}

сейчас проблема в том, что нет аннотированных под jpa.Я бы сделал это вручную, но моя проблема в том, что первичный ключ не является типичным отношением, а является просто обычным примитивным значением.

Идентификатор владельца действует как первичный ключ в моей любимой таблице ..

package com.mkl.data.entities;


import javax.persistence.*;

@Entity
public class Pet {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
  private long id;
    @Column
  private String name;

  private java.sql.Date birth;
  private String species;
  private java.sql.Date death;

  //just regular variable
  private long ownerId;


  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 java.sql.Date getBirth() {
    return birth;
  }

  public void setBirth(java.sql.Date birth) {
    this.birth = birth;
  }


  public String getSpecies() {
    return species;
  }

  public void setSpecies(String species) {
    this.species = species;
  }


  public java.sql.Date getDeath() {
    return death;
  }

  public void setDeath(java.sql.Date death) {
    this.death = death;
  }


  public long getOwnerId() {
    return ownerId;
  }

  public void setOwnerId(long ownerId) {
    this.ownerId = ownerId;
  }

}

в столбце расширения базы данных, он показывает отношения, но я действительно не появляюсь в pojo...

Должен ли я вместо этого поменять все отношения на типичные для JPA

 @ManyToOne
 private Owner owner;

или оставить ключ foregin?Может быть, с аннотацией, для ссылки на таблицу владельца?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...