`
hitxueliang
  • 浏览: 657 次
  • 性别: Icon_minigender_1
  • 来自: 哈尔滨
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Hibernate中区分值(Value)类型和实体(Entity)类型

阅读更多
有时候再用Hibernate的时候会抛出这样的一个异常“Unknown entity class:mypack.Address”
比如说,上面的情况是这样的
session.load(Address.class,new Long(1));
session.save(addr);




package mypack;
import java.io.Serializable;
public class Customer implements Serializable{

private Long id;
private String name;
private mypack.Address homeAddress;
//省略构造方法
}
Address 类 是一个包含省市县的类
,很显然Address类没有OID,这是Hibernate组建的一个重要特征。由于Address 类没有OID,因此不能通过Session来单独保存、更新、删除或者添加一个Address对象。
Hibernate把持久化类分为两种:值类型和实体类型。
两者最为重要的区别就是前者没有OID,不能被单独持久化,他的生命周期依赖于所持久化类的对象的生命周期。试题类型有OID所以可以持久化
[/size][size=medium]
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics