API критериев с @OnetoMany
Два объекта были созданы. Я хочу создать метод для сохранения сущности FoodAndActivity. Я хочу использовать Criteria API. Как мне это сделать? Я буду использовать Rest API с @GetMapping(Что я должен отправить этому методу? Идентификатор клиента и объект FoodAndActivity?) Мой код:
@Data
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "clients")
@FieldDefaults(level = PRIVATE)
@SelectBeforeUpdate
public class Client {
@Id
@GenericGenerator(name = "client_id", strategy = "increment")
@Column(name = "client_id")
int id;
@Column(name = "first_name")
String firstName;
@Column(name = "last_name")
String lastName;
@OneToMany(mappedBy = "client", fetch = FetchType.EAGER,cascade =
CascadeType.ALL)
List<FoodAndActivity> foodAndActivities;
}
@Data
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "food_and_activity")
@FieldDefaults(level = PRIVATE)
public class FoodAndActivity {
LocalDate localDate;
@Id
@GenericGenerator(name = "id", strategy = "increment")
@Column(name = "id")
int id;
@Column(name = "protein")
int protein;
@Column(name = "carbohydrate")
int carbohydrate;
@Column(name = "fat")
int fat;
@ManyToOne(fetch = FetchType.EAGER, optional = false, cascade = CascadeType.ALL)
@JoinColumn(name = "client_id")
Client client;
@PrePersist
protected void onCreate() {
localDate = LocalDate.now();
}
}