We can count on @AttributeOverrides
@Embedded @AttributeOverrides({ @AttributeOverride(name = "name", column = @Column(name = "Father_Name")), @AttributeOverride(name = "phoneNo", column = @Column(name = "Father_PhoneNo")) }) private Parent father; @Embedded @AttributeOverrides({ @AttributeOverride(name = "name", column = @Column(name = "Mother_Name")), @AttributeOverride(name = "phoneNo", column = @Column(name = "Mother_PhoneNo")) }) private Parent mother;
Test code
Student student = new Student(); student.setFirstName("James"); student.setLastName("Bond"); Parent father = new Parent(); father.setName("Bruce Bond"); father.setPhoneNo("8888 8888"); Parent mother = new Parent(); mother.setName("Jolie Bond"); mother.setPhoneNo("6666 6666"); student.setFather(father); student.setMother(mother);
Console output
Hibernate: drop table if exists STUDENT_INFO Hibernate: create table STUDENT_INFO (STUDENT_ID integer not null auto_increment, Father_Name varchar(255), Father_PhoneNo varchar(255), FIRST_NAME varchar(255), LAST_NAME varchar(255), Mother_Name varchar(255), Mother_PhoneNo varchar(255), primary key (STUDENT_ID)) Hibernate: insert into STUDENT_INFO (Father_Name, Father_PhoneNo, FIRST_NAME, LAST_NAME, Mother_Name, Mother_PhoneNo) values (?, ?, ?, ?, ?, ?)
See data in MySQL
No comments:
Post a Comment