V
Считай это как билдер
Size: a a a
V
V
SS
НП
Lr
A
А
А
@Entity
@Table(name = "user")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
@Id
@GeneratedValue
@Column(name = "id")
private Long id;
@Column(name = "name")
private String name;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "address_id", referencedColumnName = "id")
private Address address;
}
А
L
В
А
А
@Entity
@Table(name = "address")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Address {
@Id
@GeneratedValue
@Column(name = "id")
private Long id;
@Column(name = "address")
private String address;
@Column(name = "country")
private String country;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "user_id", referencedColumnName = "id")
private User user;
}
В
@Entity
@Table(name = "address")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Address {
@Id
@GeneratedValue
@Column(name = "id")
private Long id;
@Column(name = "address")
private String address;
@Column(name = "country")
private String country;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "user_id", referencedColumnName = "id")
private User user;
}
А
MB
В
А
В
А
@GetMapping
public List<User> getAll() {
Address address1 = new Address(1L, "Address1", "Ukraine",2L);
Address address2 = new Address(2L, "Address2", "Russia",3L);
Address address3 = new Address(3L, "Address3", "Slovakia", 1L);
User user1 = new User(1L, "Aaron", address3);
User user2 = new User(2L, "Michael", address1);
User user3 = new User(3L, "Demis", address2);
userRepository.save(user1);
userRepository.save(user2);
userRepository.save(user3);
return userRepository.findAll();
}