Hibernate: свойство Date внутри объекта не сохраняется в базе данных - PullRequest
0 голосов
/ 26 апреля 2018

Итак, у меня есть класс расписания, который содержит список ScheduleDateActiveItem, который имеет свойство «date». Я устанавливаю список в объекте Schedule и сохраняю объект расписания, сохраняя объект с помощью crudrepository, но свойство «date» внутриScheduleDateActiveItem имеет значение null, когда я получаю сохраненный объект.Используя отладку, я подтвердил, что объект, который я пытаюсь сохранить, содержит свойство date, поэтому что-то идет не так, как я его сохраняю. В базе данных создается запись для DateActiveScheduleItem с Id, но date и schedule_id равны нулю

 @Entity
 public class Schedule {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@ManyToOne
@JoinColumn(name = "user_id")
private User user;

@ManyToOne
@JoinColumn(name = "usergroup_id")
private UserGroup userGroup;

private String description;


private boolean master;//is this a schedule for all supervalus(true) or one supervalu(false)

@OneToMany(mappedBy = "schedule",cascade = CascadeType.PERSIST)
private List<DateActiveScheduleItem> dateActiveScheduleItems = new ArrayList<>();

@OneToMany(mappedBy = "schedule",cascade = CascadeType.PERSIST)
private List<MusicScheduleItem> musicScheduleItems = new ArrayList<>();

@OneToMany(mappedBy = "schedule",cascade = CascadeType.PERSIST)
private List<AdvertisementScheduleItem> advertisementScheduleItems = new ArrayList<>();

@Basic
@Temporal(TemporalType.DATE)
private java.util.Date dateAdded;
//getters setters}

DateActiveScheduleItem

@Entity
public class DateActiveScheduleItem {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Basic
@Temporal(TemporalType.DATE)
private java.util.Date date;



@JsonIgnore
@ManyToOne
@JoinColumn(name = "schedule_id")
private Schedule schedule;
//getters etters}

1 Ответ

0 голосов
/ 26 апреля 2018

Изменение типа каскада на CascadeType.MERGE для dateActiveScheduleItems в расписании исправило это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...