hibernate一对多双向注解

本文介绍了一种使用Java实现的ORM(对象关系映射)技术示例,具体展示了如何在一对多的关系中设置外键及关联实体。通过示例代码,详细解释了在多的一方设置外键,并在保存实体时确保外键值的有效性。
多的一方
@Entity
@Table(name = "TEMPLET")
public class Templet {
	@Id
	@SequenceGenerator(name="TEMPLET_SEQ",sequenceName="TEMPLET_SEQ")
	@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="TEMPLET_SEQ") 
    private Long id;
	
    @Column(length=200, name="TEMPLET_NAME")
    private String templetName;
    
    @Column(length=500, name="PATH")
    private String path;
    
    @Column(length=250, name="DEPNAME")
    private String depName;
    
    @ManyToOne
    @JoinColumn(name = "RECORDID")
    private TempletRecord templetRecord;
    
    ........set\get

    
}
//one的一方

@Entity
@Table(name = "TEMPLET_RECORD")
public class TempletRecord {
	@Id
	@SequenceGenerator(name="TEMPLETRECORD_SEQ",sequenceName="TEMPLETRECORD_SEQ")
	@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="TEMPLETRECORD_SEQ") 
    private Long id;
	
    @Column(length=250, name="DEPNAME")
    private String depName;
    

    @Column(length=250, name="FOLDERNAME")
    private String folderName;
    
    @Column(name="UPLOADTIME")
    private String uploadTime;

    @Column(name="TEMPLETCOUNT")
    private int templetCount;
    
    @OneToMany(cascade =CascadeType.ALL,mappedBy = "templetRecord")
    private Set<Templet> templets;

   ......set/get
    
}

ps:外键设在多的一端中recordId,要让recordid有值,必须是在保存templetRecord时,先把one端的对象给many端,如templet.setTempletRecord(templetRecord),最后再保存templetRecord。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值