Внешний ключ в дочерней таблице имеет значение null после сохранения @OneToMany.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Внешний ключ в дочерней таблице имеет значение null после сохранения @OneToMany.

Сообщение Anonymous »

Я пытаюсь вставить данные в таблицы, имеющие связь @OneToMany. После сохранения внешний ключ в дочерней таблице имеет значение NULL.

Сценарий таков: один сотрудник может иметь множество адресов. .

Address.java

@Entity
@Table(name = "address")
public class Address {

@Id
@GenericGenerator(name = "incgenerator", strategy = "increment")
@GeneratedValue(generator = "incgenerator")
private int id;
private String city;
private int zipCode;

@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "empId")
private Employee employee;

// getters, setterd
}


Employee.java

@Entity
@Table(name = "employee")
public class Employee {

@Id
@GenericGenerator(name = "incgenerator", strategy = "increment")
@GeneratedValue(generator = "incgenerator")
private int id;
private String name;

@OneToMany(mappedBy = "employee", cascade = CascadeType.ALL)
private Set address;

// getters, setters
}


hibernate.cfg.xml





update
com.mysql.jdbc.Driver
jdbc:mysql://localhost/retail
root

org.hibernate.dialect.MySQLDialect

true
true







Test.java

public class Test {

public static void main(String[] args) {

Configuration c = new Configuration();
c.configure("resources/hibernate.cfg.xml");

SessionFactory sf = c.buildSessionFactory();
Session s = sf.openSession();

Transaction t = s.beginTransaction();

Employee e = new Employee();
e.setName("Farhaan");

Address a = new Address();
a.setCity("Kolonnawa");
a.setZipCode(123);

Set aa = new HashSet();
aa.add(a);

e.setAddress(aa);

s.saveOrUpdate(e);

t.commit();
}
}


Подробнее здесь: https://stackoverflow.com/questions/479 ... -onetomany
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»