können also sagen, ich habe diese beiden Klassen:JPA - Abrufen von Informationen aus angeschlossenen Tabellen
@Entity
public class Reservation extends Observable implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
private static final long serialVersionUID = 1L;
@ManyToOne(cascade = CascadeType.MERGE)
private ReservationState state;
@ManyToOne(cascade = CascadeType.MERGE)
private CafeteriaUser user;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="idMeal",referencedColumnName= "idMeal")
private Meal meal;
Und
@Entity
public class Meal implements Serializable {
private Price price;
private MealType mealType;
private Dish m_dish;
@Temporal(javax.persistence.TemporalType.DATE)
private Calendar date;
@ManyToOne (cascade = CascadeType.ALL)
private Menu menu;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long idMeal;
public Meal() {
}
Nun, ich habe Probleme ‚Verbinden‘ diese beiden Tabellen. Was würde bedeuten, die Reservierungen zu einem bestimmten Datum zu erhalten (wählen Sie * aus Reservierung r, Mahlzeit m, wo r.idMeal = m.IDMEAL und m. "DATE" = '2016-01-01') in JPQL?
Es scheint mit r.idMeal = m.idMeal gibt mir "Der Sammlung-Wert-Pfad 'r.idMeal' kann nicht in ein gültiges Assoziationsfeld aufgelöst werden." Fehler
r.idMeal ist keine Sammlung wertgeschätzten Pfad (basierend auf was Sie veröffentlichen). r.idMeal ist jedoch ein Meal-Objekt und m.idMeal ist ein Long ... also sind sie nicht vergleichbar –