Отображение один в один в H2DB: нулевая ссылка во внешнем ключе - PullRequest
0 голосов
/ 08 января 2019

Я загружаю файл json в H2DB. Я получаю нулевую ссылку во внешнем ключе.

Студенческая организация:

@Entity
public class Student {
@Id
@Column(name="STUDENT_ID")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;

private String name;

public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
@Override
public String toString() {
    return "Student [name=" + name + ", id=" + id + "]";
}
public Student() {
    super();
    // TODO Auto-generated constructor stub
}
public Student(int id, String name) {
    super();
    this.id = id;
    this.name = name;
}
//@Embedded
@OneToOne(cascade=CascadeType.ALL)
private Address address;

public Address getAddress() {
    return address;
}
public void setAddress(Address address) {
    this.address = address;
}
}

Адрес объекта:

//@Embeddable
@Entity
public class Address {
@Id
@Column
@GeneratedValue(strategy=GenerationType.AUTO)
int aid;
public int getAid() {
    return aid;
}
public void setAid(int aid) {
    this.aid = aid;
}
String street,city;
int zip;
public Address() {
    // TODO Auto-generated constructor stub

}
public String getStreet() {
    return street;
}
public void setStreet(String street) {
    this.street = street;
}
public String getCity() {
    return city;
}
public void setCity(String city) {
    this.city = city;
}
public int getZip() {
    return zip;
}
public void setZip(int zip) {
    this.zip = zip;
}
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn
private Student student;
public Student getStudent() {
    return student;
}
public void setStudent(Student student) {
    this.student = student;
}
}

Мне нужен идентификатор студента в таблице адресов в качестве внешнего ключа. Но у меня есть адрес в таблице учеников

Таблица: Созданы таблицы H2DB

Вот файл JSON, который я загружаю JSON:

[ 
{

"name" : "Lakshmi",
"address" : 
{
"street": "kattabomman",
"city" : "Coimbatore",
"zip" : "641035"
}

}, 
{

"name" : "Pravin",
"address" : 
{
"street": "kattabomman",
"city" : "Coimbatore",
"zip" : "641035"
}

}, 
{
"name" : "Ranjith",
"address" : 
{
"street": "k",
"city" : "Coe",
"zip" : "641"
}

} ]

Где я совершил ошибку? Заранее спасибо.

...