如何处理静态外键相关表spring data jpa

mwkjh3gx  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(222)

经过一段时间之后,我进入了这个领域,并且正在使用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;

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题