`klasa nr 1:
@NoArgsConstructor
@AllArgsConstructor
@Data
@Entity
public class Branch {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long branchId;
private String city;
private String street;
private int localNumber;
private int flatNumber;
@OneToMany(targetEntity = Car.class)
@JoinColumn(name = "carId")
private List<Car> availableCars;
@OneToMany(targetEntity = Employee.class)
@JoinColumn(name = "employeeId")
private List<Employee> employees;
public Branch(String city, String street, int localNumber, int flatNumber){
this.city = city;
this.street = street;
this.localNumber = localNumber;
this.flatNumber = flatNumber;
}
klasa nr 2 :
@NoArgsConstructor
@AllArgsConstructor
@Data
@Entity
public class Car {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long carId;
private Mark mark;
private String model;
private CarBody carBody;
private int yearbook;
private Color color;
private int mileage;
private Status status;
private int loanAmountPerDay;
@OneToOne(targetEntity = Branch.class)
@JoinColumn(name = "branchId")
private Branch Branch;
public Car(Mark mark, String model, CarBody carBody, int yearbook, Color color,
int mileage, Status status, int loanAmountPerDay) {
this.mark = mark;
this.model = model;
this.carBody = carBody;
this.yearbook = yearbook;
this.color = color;
this.mileage = mileage;
this.status = status;
this.loanAmountPerDay = loanAmountPerDay;
}
metoda:
@PostMapping("/addCars")
public boolean addCar(@RequestParam("mark") Car.Mark mark,
@RequestParam("model") String model,
@RequestParam("carBody") Car.CarBody carBody,
@RequestParam("yearBook") int yearbook,
@RequestParam("color") Car.Color color,
@RequestParam("mileage") int mileage,
@RequestParam("status") Car.Status status,
@RequestParam("loanAmountPerDay") int loanAmountPerDay) {
return carAppService.addCar(new Car(mark, model, carBody, yearbook, color, mileage, status, loanAmountPerDay));
}
po probie dodania samochodu wyskakuje error 500 w swaggerze, a w konsoli :
Cannot add or update a child row: a foreign key constraint fails (car_rental
.car
, CONSTRAINT FK4rkn92jee4bmqmtankibn4aov
FOREIGN KEY (car_id
) REFERENCES branch
(branch_id
))
mam 3 branche stworzone i z tego co ja rozumiem to jest problem z przypisaniem id brancha do samochodu?
jak moge rozwiazac ten problem? z gory dzieki za odpowiedzi
ed: przed stworzeniem branchy bez problemu dodalem metoda 2 samochody