Как сохранить класс, используя Hibernate, который используется по-разному? - PullRequest
0 голосов
/ 02 ноября 2011

Я новичок в спящем мире, все еще учусь этому. Я пытаюсь сохранить один класс в базе данных, используя спящий режим. Объекты этого класса могут иметь различное значение в своих клиентских классах. Ниже приведено определение класса, которое я хочу сохранить:

class Entity {
    int id;
    String name;
}

class ClientClass {
    int clientClassID;
    List<Entity> employerList;
    List<Entity> clientList;
}

Файл сопоставления для ClientClass выглядит следующим образом:

<hibernate-mapping package="com.foo.bar.model">
    <class name="ClientClass" table="CLIENTS">
        <id name="clientClassID" column="CLIENT_ID" type="integer"
            unsaved-value="0">
            <generator class="native" />
        </id>
        <set name="clientList" table="PROJECT_CLIENTS" cascade="all">
            <key column="CLIENT_ID" />
            <many-to-many column="CLIENT_ID" class="Entity" />
        </set>
        <property name="description" type="string" length="1000" />
        <set name="employerList" table="PROJECT_EMPLOYERS" cascade="all">
            <key column="CLIENT_ID" />
            <many-to-many column="EMPLOYER_ID" class="Entity" />
        </set>
         </class>
</hibernate-mapping>

Я не могу понять, как писать сопоставления для Entity класса? Пожалуйста, помогите мне. Если вам нужно больше информации, пожалуйста, дайте мне знать.

Заранее спасибо !!!

1 Ответ

1 голос
/ 02 ноября 2011

Сначала вам нужно отобразить Entity как собственный класс.

<class name="Entity" table="ENTITY">
    <id name="id" column="id" type="integer"
        unsaved-value="0">
        <generator class="native" />
    </id>
    <property name="name" type="string" />
</class>

Затем вы можете добавить его как ассоциацию «многие ко многим» в других ваших классах.Я не очень понимаю, как должно работать ваше отображение на EMPLOYER_NAME и CLIENT_ID.

Для получения дополнительной документации см .: http://docs.jboss.org/hibernate/core/3.3/reference/en/html/collections.html#collections-ofvalues

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...