hibernate一对多注解怎么配置

avatar
作者
筋斗云
阅读量:5

在Hibernate中,使用注解配置一对多关系需要使用@OneToMany注解。下面是一个示例:

假设有两个实体类,一个是Customer类,另一个是Order类,一个顾客可以拥有多个订单。在Customer类中配置一对多关系如下:

@Entity @Table(name = "customers") public class Customer {      @Id     @GeneratedValue(strategy = GenerationType.IDENTITY)     private Long id;      private String name;      @OneToMany(mappedBy = "customer", cascade = CascadeType.ALL)     private Set<Order> orders;      // 省略getter和setter方法 } 

在Order类中配置多对一关系如下:

@Entity @Table(name = "orders") public class Order {      @Id     @GeneratedValue(strategy = GenerationType.IDENTITY)     private Long id;      private String item;      @ManyToOne     @JoinColumn(name = "customer_id")     private Customer customer;      // 省略getter和setter方法 } 

在Customer类中使用@OneToMany注解,指定了mappedBy属性为"customer",表示Order类中的customer属性维护了关联关系。同时还使用了cascade属性设置级联操作,当删除顾客时,同时删除相关的订单。

在Order类中使用@ManyToOne注解,指定了JoinColumn属性为"customer_id",表示该属性在数据库中对应的外键列名。这样就建立了Customer类和Order类之间的一对多关系。

注意:以上示例中使用了@Entity、@Table、@Id和@GeneratedValue注解配置实体类和主键生成策略,这些是Hibernate的基本注解配置,如果你还不熟悉,可以先学习一下。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!