annotation 与xml 多表映射关系

一(Group)对多(User):

Annotation 声明映射文件(Group):

@Entity
@Table(name="t_group")
public class Group {
 private int id;
 private String name;
 private Set<User> users = new HashSet<User>();
 @Id
 @GeneratedValue
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 @OneToMany
 @JoinColumn(name="groupId")
 public Set<User> getUsers() {
  return users;
 }
 public void setUsers(Set<User> users) {
  this.users = users;
 }
}

 xml声明映射文件(Group):

<hibernate-mapping>
 <class name="com.bjsxt.hibernate.Group" table="t_group">
  <id name="id">
   <generator class="native"></generator>
  </id>
  
  <property name="name"></property>
  <set name="users">
   <key column="groupId"></key>
   <one-to-many class="com.bjsxt.hibernate.User"/>
  </set>
    </class>
 
</hibernate-mapping>

 

Annotation 声明映射文件(User):

@Entity
@Table(name="t_user")
public class User {
 private int id;
 private String name;
 
 
 @Id
 @GeneratedValue
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}

 xml声明映射文件(User):

<hibernate-mapping>
 <class name="com.bjsxt.hibernate.User" table="t_user">
  <id name="id">
   <generator class="native"></generator>
  </id>
  
  <property name="name"></property>
  
    </class>
 
</hibernate-mapping>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值