如何使用休眠 java 将自定义 class 保存到 mysql 数据库
How can I save the custom class to mysql database using hibernate java
我有一个 class FilmSession,它是一个数据库实体:
@Entity
@Table(name = "film_session")
public class FilmSession {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private SessionInfo sessionInfo;
}
我应该将 sessionInfo 解析为 JSON 吗?如果是这样,如何?或者我应该像 String in db 一样保存这个字段吗?
会话信息class:
public class SessionInfo {
private Long film_id;
private Long cinema_id;
private SeatStatus[][] seatStatuses;
private Double price;
private Date date;
}
像这样:
@Entity
@Table(name = "film_session")
public class FilmSession {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@OneToOne(cascade = {CascadeType.ALL})
@JoinColumn(name = "session_info", referencedColumnName = "session_id")
private SessionInfo session_info;
}
@Entity
@Table(name = "session_info")
public class SessionInfo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long session_id;
....
}
我有一个 class FilmSession,它是一个数据库实体:
@Entity
@Table(name = "film_session")
public class FilmSession {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private SessionInfo sessionInfo;
}
我应该将 sessionInfo 解析为 JSON 吗?如果是这样,如何?或者我应该像 String in db 一样保存这个字段吗?
会话信息class:
public class SessionInfo {
private Long film_id;
private Long cinema_id;
private SeatStatus[][] seatStatuses;
private Double price;
private Date date;
}
像这样:
@Entity
@Table(name = "film_session")
public class FilmSession {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@OneToOne(cascade = {CascadeType.ALL})
@JoinColumn(name = "session_info", referencedColumnName = "session_id")
private SessionInfo session_info;
}
@Entity
@Table(name = "session_info")
public class SessionInfo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long session_id;
....
}