日期:2014-05-18  浏览次数:20832 次

JPA Annotation相关的问题,设置关联
有三个表如下:


新建的有Entity如下:

@Entity
public class Employee {
  @Id
  private long id;
  ...
  @OneToMany
  //如果我期望下面返回的MAP的key对应Areacode,value对应number
  //???请教这一部分的注解该怎么写???
  public Map<String,String> getAllPhones(){
  ...
  }
}


问题见上面代码,我是菜鸟,谢谢!
jpa java annotation

------解决方案--------------------
技术贴必须要顶
------解决方案--------------------
直接Employee与phone多对多的关系,表自动创建,就成你的表了
------解决方案--------------------
@ManyToMany       
@JoinTable(name = "Employee_phone", joinColumns = {@JoinColumn(name = "Employee_ID", referencedColumnName = "Employee_ID")}, inverseJoinColumns = {@JoinColumn(name = "phone_ID", referencedColumnName = "phone_ID")})    

示例
------解决方案--------------------
楼上的写得很详细
------解决方案--------------------
还是使用Set配ManyToMany,
然后定义你的Map的get方法,在方法内生成你的map并返回