【问题标题】:Hibernate delete row and foreign key row ManyToOneHibernate删除行和外键行ManyToOne
【发布时间】:2013-10-03 20:02:06
【问题描述】:

我有以下两个类,一个 ReqCandAssociation 可以有很多 Comments,它是这样映射的。我需要找出一种方法,当我删除 ReqCandAssociation 时,它会删除其所有关联的 cmets。谢谢

@Entity
@Table(name = "candidate_jobReq")
public class ReqCandAssociation implements Serializable {

@Id
private Integer candidateId;

@Id
private Integer jobId;

@Column(name = "reqStatus")
private String reqStatus;

@ManyToOne
@PrimaryKeyJoinColumn(name="candidateId", referencedColumnName="id")
private Candidate candidate;

@ManyToOne
@PrimaryKeyJoinColumn(name="jobId", referencedColumnName="id")
private JobReq jobReq;

public ReqCandAssociation(){

}

二等

@Entity
@Table(name="comment")

 public class Comment {

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id; 

@Column(name="commentText")
private String commentText;

@Column(name="commentDate")
private Date commentDate;

@ManyToOne
@PrimaryKeyJoinColumn(name="reqCandAssociationId", referencedColumnName="id")
private ReqCandAssociation reqCandAssociation;

@ManyToOne
@PrimaryKeyJoinColumn(name="userId", referencedColumnName="id")
private User user;

【问题讨论】:

    标签: java hibernate constraints one-to-many foreign-key-relationship


    【解决方案1】:

    把它改成下面这样,我正在做双向映射。

    @Entity
    @Table(name = "candidate_jobReq")
    public class ReqCandAssociation implements Serializable {
    
    @Id
    private Integer candidateId;
    
    @Id
    private Integer jobId;
    
    @Column(name = "reqStatus")
    private String reqStatus;
    
    @OneToMany(cascade = { CascadeType.ALL }) //this is added here.
    @JoinColumn(name ="reqCandAssociationId")
    private Set<Comment> comments;
    -----
    

    阅读有关级联选项的更多信息。所有级联类型均为 all|none|save-update|delete|all-delete-orphan|delete-orphan

    级联 all 将删除与该类关联的所有 cmets。

    【讨论】:

    • 啊,谢谢,我认为做这样的事情会违反数据库的最佳实践,但我想这是一个休眠的事情。再次感谢。
    猜你喜欢
    • 2015-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    相关资源
    最近更新 更多