Похоже, что нет прямого способа привязать ваши таблицы к спящему режиму (по крайней мере, я не в курсе).
Используя наследование, вы можете произвести аналогичный эффект. Movie
и Game
могут быть подклассом другого класса (скажем, Likable
). Так что вы можете использовать Likable
класс, как показано ниже:
@Entity
@Table(name="like")
public class Like {
@Id
@GeneratedValue
@Column(name="like_id")
private Integer id;
@ManyToOne
@JoinColumn(name="likable_id", nullable=false)
private Likable likable;
@ManyToOne
@JoinColumn(name="user_id", nullable=false)
private User user;
}
Likable
класс будет выглядеть так:
@Entity
@Table(name = "likable")
@Inheritance(strategy=InheritanceType.JOINED)
public class Likable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private int id;
}
Movie
класс:
@Entity
@Table(name="movie")
@PrimaryKeyJoinColumn(name="id")
public class Movie extends Likable {
private String title;
private int duration;
}
А Game
класс:
@Entity
@Table(name="videoGame")
@PrimaryKeyJoinColumn(name="id")
public class Game extends Likable {
private String title;
private int nbPlayer;
}