您的位置:首页 > 其它

Hibernate持久化技术实例讲解

2012-10-24 16:51 393 查看
  Hibernate持久化技术让我们能够工作得更好,我们通过一个例子来简单说明Hibernate持久化技术的应用。

  

  在一般应用程序中,用来实现业务问题实体的(如,在电子商务应用程序中的Customer和Order) 类就是持久化类。不能认为所有的持久化类的实例都是持久的状态--一个实例的状态也可能 是瞬时的或脱管的。

  

  如果这些Hibernat持久化类遵循一些简单的规则,Hibernate能够工作得更好,这些规则也被称作 简单传统Java对象(POJO:Plain Old Java Object)编程模型。但是这些规则并不是必需的。 实际上,Hibernate3对于你的持久化类几乎不做任何设想。你可以用其他的方法来表达领域模型: 比如,使用Map实例的树型结构。





  

  一个简单的POJO例子说明Hibernate持久化

  

  大多数Java程序需要用一个持久化类来表示猫科动物。

  

  package eg;

  

  import java.util.Set;

  

  import java.util.Date;

  

  public class Cat {

  

  private Long id; // identifier

  

  private Date birthdate;

  

  private Color color;

  

  private char sex;

  

  private float weight;

  

  private int litterId;

  

  private Cat mother;

  

  private Set kittens

  

  = new

  

  HashSet();

  

  private void setId(Long id) {

  

  this.id

  

  =id;

  

  }

  

  public Long getId() {

  

  return id;

  

  }

  

  void setBirthdate(Date date) {

  

  birthdate

  

  = date;

  

  }

  

  public Date getBirthdate() {

  

  return birthdate;

  

  }

  

  void setWeight(float weight) {

  

  this.weight

  

  = weight;

  

  }

  

  public float getWeight() {

  

  return weight;

  

  }

  

  public Color getColor() {

  

  return color;

  

  }

  

  void setColor(Color color) {

  

  this.color

  

  = color;

  

  }

  

  void setSex(char sex) {

  

  this.sex

  

  =sex;

  

  }

  

  public char getSex() {

  

  return sex;

  

  }

  

  void setLitterId(int id) {

  

  this.litterId

  

  = id

  

  ;

  

  }

  

  public int getLitterId() {

  

  return litterId;

  

  }

  

  void setMother(Cat mother) {

  

  this.mother

  

  = mother;

  

  }

  

  public Cat getMother() {

  

  return mother;

  

  }

  

  void setKittens(Set kittens) {

  

  this.kittens

  

  = kittens;

  

  }

  

  public Set getKittens() {

  

  return kittens;

  

  }

  

  // addKitten not needed by Hibernate

  

  public void addKitten(Cat kitten) {

  

  kitten.setMother(this);

  

  kitten.setLitterId( kittens.size() );

  

  kittens.add(kitten);

  

  }

  

  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: