`
keating
  • 浏览: 167151 次
  • 性别: Icon_minigender_1
  • 来自: weihai
社区版块
存档分类
最新评论

JPA 2 Inheritance

    博客分类:
  • Java
阅读更多
父类Super,
@Entity
public class Super {
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Id
	private int id;
	private String name;
        //getters and setters...
}

然后,两个子类,
@Entity
public class M extends Super {
	private String mName;
        //getters and setters...
}

@Entity
public class N extends Super {
	private String nName;
        //getters and setters...
}

虽然Super已经是个Entity了,但是子类仍然需要标记上@Entity。
生成的表结构十分友爱,
ID DTYPE NAME  NNAME  MNAME 
  1 M     super NULL   type m
  2 N     super type n NULL  

子类的字段全部写上,两个子类万一有个重名的字段,估计就郁闷了..我猜生成数据库表并不会报错,但是插入数据将报错。继承同嵌入一样,同样需要一个规范来约束变量的命名呦...另外,还有一个DTYPE,varchar(31)...
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics