Hibernate Многие к одному в каскадном удалении - PullRequest
0 голосов
/ 08 марта 2012

Привет всем, я новичок в этой группе. У меня проблема во многих отношениях с одним. У меня была таблица с именем machinemaster, в которой есть один первичный ключ, и есть еще 12 таблиц, скажем, bios, hdd и так далее в этом все у таблиц есть ссылка на machinemaster, скажем machineID.at первые данные будут вставлены в machinemaster и после получения ссылки на id они будут вставлены во все дочерние таблицы .. это работает нормально ... но когда я ввожу данные в дочернюю таблицу, это сделать ноль для всех полей machinemaster, кроме id ... так что у меня что-то пошло не так, что я не знаю ... есть проблема в cascade = delete & lazy = false ... я сохранил это, так что скажите мне, правильно ли это, если да, тогда почему родительские данные обновляются до нуля, когда я вставляю данные в дочерний элемент на основе ссылки родительского элемента ... заранее спасибо

1 Ответ

0 голосов
/ 09 марта 2012

Я бы пошел с иерархией наследования, как это

class Part
{
    int id;
}

class Hdd extends Part
{
    string someProp;
}

class Bios extends Part
{
    string version;
}

<class name="Part" table="mashinemaster">
  <id name="id" >
    <generator ...>
  </id>
  <joined-subclass name="Hdd" table="hddtable">
    <key column="machineID" />
    <property name="someProp" />
  </joined-subclass>
  <joined-subclass name="Bios" table="biostable">
    <key column="machineID" />
    <property name="version" />
  </joined-subclass>
</class>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...