Я очень новичок в Java и пытаюсь создать простой API с помощью Spring. Я не могу найти четкого описания того, как реализовать интуитивные отношения pk-fk в файлах модели. API - это приложение для ресторана, и предметы из таблицы меню должны использоваться в заказах и корзинах.
Я записал все определения таблиц в файлы моделей, такие как Меню, Цены, Заказы, Корзина покупок, и мне нужно использовать столбцы из таблицы Меню, которые не являются pk (например, имя элемента) в таблице Заказы. Как я понимаю, связь может быть установлена только с помощью pk, но как мне получить доступ к другим столбцам таблицы меню из таблицы Orders через pk?
@Entity
public class Menu {
@Id
@GeneratedValue(strategy= GenerationType.IDENTITY)
private int id;
private String name;
private float size;
private String ingredients;
private String dishCat;
private String drinkCat;
private Boolean drink;
private String remarks;
private String offer;
protected Menu() {
}
public Menu(String name, float size, String ingredients, String dishCat, String drinkCat, Boolean drink, String offer, String remarks) {
this.name = name;
this.size = size;
this.ingredients = ingredients;
this.dishCat = dishCat;
this.drinkCat = drinkCat;
this.drink = drink;
this.offer = offer;
this.remarks = remarks;
}
@Override
public String toString() {
if (drink == false) {
return String.format("%d. %s: %s - %s. Size: %f g. Ingredients: %s. Category: %s.", id, dishCat, name, offer, size, ingredients, remarks);
}
else {
return String.format("%d. %s: %s - %s. Size: %f ml.", id, drinkCat, name, offer, size);
}
}
// Getters and setters, accessor methods
}