Я все еще довольно новичок в Hibernate, и я все еще нахожусь на крутой кривой обучения.У меня есть приложение, которое будет отслеживать, какие люди были на каком мероприятии и наоборот.У меня есть класс событий и класс Person, связанные через объединяемую таблицу.
У меня есть формы и вспомогательные классы, которые позволяют мне вводить данные в отдельные классы Person и Event, сохранять их, искать их, удалять,измените это и перечислите это.Это все проверено и работает.
Когда я добавляю людей в событие, я могу перечислить все события и видеть список людей, прикрепленных к событиям, но когда я выводю список людей, у них у всех появляется список событий размером 0.
Насколько я понимаю, если я присоединяю человека к событию, которое должно появиться в Event.myPeople, и что это событие должно отображаться в Person.eventList.
Очевидно, что я делаю что-то не таки я подозреваю, что это в моих аннотациях и декларациях.Я перечислил оба набора для классов Event и Person ниже.В случае неудачи из-за фундаментального недопонимания Hibernate, скорее всего, оба.С другой стороны, чем больше ошибок я совершаю, тем быстрее учусь.
Есть идеи, где я ошибаюсь?
@Entity
@Table(name = "PERSON")
public class Person implements Serializable {
@Id
@GeneratedValue
@Column(name = "person_id")
private int ID;
private String foreName;
private String surName;
@Temporal(javax.persistence.TemporalType.DATE)
private Date dob; //used to differentiate people with same name
@Temporal(javax.persistence.TemporalType.DATE)
private Date joinDate; //used to filter events outside active dates
@Temporal(javax.persistence.TemporalType.DATE)
private Date endDate; //used to filter events outside active dates
private Boolean active;
@ManyToMany()//cascade=CascadeType.ALL)
@JoinTable(name = "PERSON_EVENT", joinColumns = @JoinColumn(name = "person_id"),
inverseJoinColumns = @JoinColumn(name = "event_id"))
private Set<Event> eventList;
@OneToOne
private Sections mySection;
@Entity
@Table(name = "EVENT")
public class Event implements Serializable {
@Id
@GenericGenerator(name = "generator", strategy = "increment")
@GeneratedValue(generator = "generator")
@Column(name="event_id")
private long id;
private String eventTitle;
private String eventDescription;
private String eventLocation;
@Temporal(javax.persistence.TemporalType.DATE)
private Date startDate;
@Temporal(javax.persistence.TemporalType.DATE)
private Date endDate;
@ManyToMany(cascade = CascadeType.ALL)
private Set<Person> myPeople;
@OneToMany(mappedBy = "myEvent")
private Set<EventType> type;