У меня небольшие проблемы при создании моего первого игрового приложения.
Я получил класс еды, в котором может быть один или несколько объектов MealEntries. Один прием пищи может быть использован для нескольких приемов пищи (т.е. если вы едите 2 яйца за более чем один прием пищи). Но я получаю исключение.
Я могу понять, почему я получаю исключение, но я не могу понять, как я могу это вылечить.
Это мое исключение:
Caused by: java.sql.BatchUpdateException: Duplicate entry '4' for key 'mealEntries_id'
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:2020)
at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1451)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
... 12 more
Класс питания:
public class Meal extends Model {
public String name;
public Date consumed;
@OneToMany
public List<MealEntry> mealEntries;
}
Класс MealEntry:
public class MealEntry extends Model {
public int amount;
@OneToOne
public Unit unit;
@OneToOne
public FoodType type;
@OneToOne
public MealEntry with;
}
Заранее спасибо
Edit:
Пытался создать тестовый пример, но столкнулся с какой-то другой ошибкой.
Я постараюсь объяснить:
Исключение происходит, когда я пытаюсь создать второй прием пищи, используя MealEntries, которые также используются в первом приеме пищи.