经过一段时间之后,我进入了这个领域,并且正在使用spring框架、spring boot和spring data jpa来提高我的java技能。
这是我的问题…我有一个我正在开发的项目管理应用程序,名为project的主表,它有一个静态状态表的外键,当试图将一个新的项目实体插入到设置了状态表对象的数据库中时,我要么在状态表中得到状态'的重复,要么像在当前表单中一样,尝试在数据库中插入新的状态记录时出错,外键约束出错。
如何Map此关系以保存项目而不创建新的状态记录?或者我只需要删除项目和状态表的约束,并在对象级别将状态的id与项目实体一起保存?
Project Entity Class
@Entity
@Table(name = "project_tbl")
public class Project implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
//Name and date fields ommited
@ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.PERSIST)
@JoinColumn(name = "status_id")
private ProjectStatus status;
//构造函数、getter和设置ommited
Status Entity Class
@Entity
@Table(name = "status_tbl")
public class ProjectStatus implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;
private String name;
暂无答案!
目前还没有任何答案,快来回答吧!