доброго времени суток!
осваиваю 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>
заранее большое спасибо!