首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

转-JPA 眉批参考(3)

2012-10-30 
转-JPA 批注参考(3)属性必需说明name属性必需说明value要指定复合主键类,请将 value 设置为所需的 Class(

转-JPA 批注参考(3)

属性

必需

说明

name

转-JPA 眉批参考(3)

属性

必需

说明

value

转-JPA 眉批参考(3)

要指定复合主键类,请将 value 设置为所需的 Class(请参阅 @AttributeOverride)。
示例 1-37 显示了一个非嵌入的复合主键类。在该类中,字段 empName 和 birthDay 的名称和类型必须对应于实体类中属性的名称和类型。示例 1-38 显示了如何使用这个非嵌入的复合主键类(使用 @IdClass 批注)配置 EJB 3.0 实体。由于实体类字段 empName 和 birthDay 在主键中使用,因此还必须使用 @Id 批注对其进行批注。
示例 1-37 非嵌入的复合主键类
public class EmployeePK implements Serializable{private String empName;private Date birthDay;
public EmployeePK()???       {???       }
public String getName()???       {return empName;???       }
public void setName(String name)???       {empName = name;???       }
public long getDateOfBirth()???       {return birthDay;???       }
public void setDateOfBirth(Date date)???       {birthDay = date;???       }
public int hashCode()???       {return (int) empName.hashCode();???       }
public boolean equals(Object obj)???       {if (obj == this) return true;if (!(obj instanceof EmployeePK)) return false;if (obj == null) return false;EmployeePK pk = (EmployeePK) obj;return pk.birthDay == birthDay && pk.empName.equals(empName);???       }}
示例 1-38 @IdClass
@IdClass(EmployeePK.class)@Entitypublic class Employee{@Id String empName;@Id Date birthDay;...}

热点排行