Hibernate mapping question...
От: BeerKiller  
Дата: 21.08.05 23:02
Оценка:
доброго времени суток!

осваиваю hibernate, столкнулся с задачей, общий смысл которой сводится к следующему:

есть классы:

public class Person {
  private long id;
  private String name;
  private int age;
  // ...
  // getters/setters
}

public class Car {
  private long id;
  private String model;
  private String color;
  // ...
  // getters/setters

}

public class TakenCar {
  private long id;
  private Person person;
  private Car car;
  // ...
  // getters/setters
}


есть так же таблицы (*PrimaryKey):

PERSONS (*P_ID, P_NAME, P_AGE)
CARS (*C_ID, C_MODEL, C_COLOR)
TAKENCARS (*TC_ID, P_ID, C_ID)

соответственно связи:

PERSONS.P_ID <1---*> TAKENCARS.P_ID
CARS.C_ID <1---*> TAKENCARS.C_ID

вот так я это пытаюсь мапить:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    
    <class name="Person" table="PERSON">
        <id name="id" type="long" column="P_ID">
            <generator class="increment"/>
        </id>
        <property name="name" column="P_NAME"/>
        <property name="age" column="P_AGE"/>
    </class>
    
    <class name="Car" table="CARS">
        <id name="id" type="long" column="C_ID">
            <generator class="increment"/>
        </id>
        <property name="model" column="C_MODEL"/>
        <property name="color" column="C_COLOR"/>
    </class>
    
    <class name="TakenCar" table="TAKENCARS">
        <id name="id" type="long" column="TC_ID">
            <generator class="increment"/>
        </id>
        <!-- здесь и вопрос: как правильно 
                смапить связи и нужно ли вставлять
                в этот класс свойства для полей
                P_ID и C_ID таблицы TAKENCARS ? -->
    </class>
    
</hibernate-mapping>


заранее большое спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.