Hallo Ich verbringe derzeit viel Zeit herauszufinden, warum mein One-One Hibernate Mapping nicht aktualisiert wird können Sie mir helfen.Hibernate Aktualisierung eines One-One unidirektionalen
von der Art, wie ich überwintern in neu bin
Dies ist der BookingModel.java
@Entity
@Table(name="booking")
public class BookingModel {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
String id;
@ManyToOne
@JoinColumn(name="teacher", nullable=false)
@JsonManagedReference
TeacherModel teacher;
@OneToOne(mappedBy="bookingModel", cascade=CascadeType.ALL)
ClassModel classModel;
@Column(name="start")
Date start;
@Column(name="end")
Date end;
@Column(name="title")
String title;
//getters and setters
}
und dies ist der ClassModel.java
@Entity
@Table(name="class")
public class ClassModel {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id")
private String id;
@ManyToOne
@JoinColumn(name="student")
private StudentModel student;
@OneToOne
@PrimaryKeyJoinColumn
BookingModel bookingModel;
//getters and setters
}
und diese die Methode, die ich versuche zu erreichen
BookingModel booking = find(scheduleId);
ClassModel classModel = classDao.getClass(classId);
classModel.setBookingModel(booking);
booking.setClassModel(classModel);
booking.setTitle("TEST");
update(booking);
die setTitle funktionieren, aber die Klasse Feld in meiner db ist immer noch null
das ist die Update-Methode
@Transactional
@Override
public void bookClass(String classId, String scheduleId) {
org.springframework.security.core.userdetails.User user = (org.springframework.security.core.userdetails.User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
BookingModel booking = find(scheduleId);
ClassModel classModel = classDao.getClass(classId);
classModel.setBookingModel(booking);
booking.setClassModel(classModel);
booking.setTitle("TEST");
update(booking);
}
@Override
public void update(E entity) {
try{
Transaction t = currentSession().beginTransaction();
currentSession().update(entity);
t.commit();
}catch(Exception e){
e.printStackTrace();
}
}
Vielen Dank im Voraus Jungs
Post vollständige Update-Methode –
Hallo @ VikramSingh –
haben Sie meine Antwort versucht ?? –