1.3.1. 映射Person类

最初简单的Person类:

  1. package events;
  2. public class Person {
  3. private Long id;
  4. private int age;
  5. private String firstname;
  6. private String lastname;
  7. public Person() {}
  8. // Accessor methods for all properties, private setter for 'id'
  9. }

创建一个名为Person.hbm.xml的新映射文件(别忘了最上面的DTD引用):

  1. <hibernate-mapping>
  2. <class name="events.Person" table="PERSON">
  3. <id name="id" column="PERSON_ID">
  4. <generator class="native"/>
  5. </id>
  6. <property name="age"/>
  7. <property name="firstname"/>
  8. <property name="lastname"/>
  9. </class>
  10. </hibernate-mapping>

最后,把新的映射加入到Hibernate的配置中:

  1. <mapping resource="events/Event.hbm.xml"/>
  2. <mapping resource="events/Person.hbm.xml"/>

现在我们在这两个实体之间创建一个关联。显然,persons可以参与一系列events,而events也有不同的参加者(persons)。我们需要处理的设计问题是关联方向(directionality),阶数(multiplicity)和集合(collection)的行为。