Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Java > Java Базы данных (JDBC, JPA, Hibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 11.05.2019, 21:58   #1
Alexmur07
Форумчанин
 
Регистрация: 20.11.2008
Адрес: Новосибирская область
Сообщений: 119
Репутация: 10
Вопрос hibernate Маппинг как правильно работать с объектами?

Допустим у меня есть Два объекта
: Пинал и ручка
в пинале может содержаться большое количество ручек представим бд с двумя таблицами:
Код:

<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping xmlns="http://www.hibernate.org/xsd/hibernate-mapping">
    <class name="ru.modelsxml.Pinal" table="Pinal">
        <id name="id" column="id">
            <generator class="identity"/>
        </id>
        <property name="name" column="name"/>
         <bag name="ruchka" table="ruchka" inverse="true" cascade="all-delete-orphan">
            <key column="name_ruchka" not-null="true"/>
            <one-to-many class="ru.modelsxml.Ruchka"/>
        </bag>
    </class>
</hibernate-mapping>

Код:

<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping xmlns="http://www.hibernate.org/xsd/hibernate-mapping">
<class name="ru.modelsxml.Ruchka" table="ruchka">
    <id name="id" column="id">
        <generator class="identity"/>
    </id>
    <property name="name_ruchka" column="name_ruchka"/>
    <many-to-one name="pinal" column="pinal_id" class="ru.modelsxml.Pinal"/>
</class>
</hibernate-mapping>

и вот я сразу создаю объект пинал, который содержит несколько ручек и через hibernate пытаюсь добавить его в БД в результате 1 пинал добавился и ручки добавились, но в таблице ручек у ручек не проставляются id пиналов к которым они принадлежат. вопрос: какой чщё надо параметр указать чтобы у ручек проставлялись грамотно id пиналов с которыми они добавляются
__________________
Разгон – вещь не определённая,
по этому конечный результат зависит от конкретного чипа (CPU или GPU а также моста), качества охлаждения и везения.
Alexmur07 вне форума   Ответить с цитированием
Старый 11.05.2019, 22:02   #2
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 18,570
Репутация: 3570

icq: 512-765
skype: alexp.frl
По умолчанию

Там же с аннотациями давно можно, зачем XML?
Alex11223 вне форума   Ответить с цитированием
Старый 11.05.2019, 22:11   #3
Alexmur07
Форумчанин
 
Регистрация: 20.11.2008
Адрес: Новосибирская область
Сообщений: 119
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Там же с аннотациями давно можно, зачем XML?
можете подсказать каких параметров не хватает чтобы при добавлении объека пинал, в таблицу добавлялись ручки с id пинала?

я только пока про xml почитал до аннотаций ещё не дошёл


Код:


import java.util.List;

public class Pinal {
    private  String name;
    private List<Ruchki> ruchkis;

    public List<Ruchki> getRuchkis() {
        return ruchkis;
    }

    public void setRuchkis(List<Ruchki> ruchkis) {
        this.ruchkis = ruchkis;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}



public class Ruchki {
    private String name;
    private Pinal pinal;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Pinal getPinal() {
        return pinal;
    }

    public void setPinal(Pinal pinal) {
        this.pinal = pinal;
    }
}

это только пример а не сама задача вот калссы написал побыстрому если не сложно можете привести на них пример как будет выглядеть на аннотациях? но лучше конечно на xml
__________________
Разгон – вещь не определённая,
по этому конечный результат зависит от конкретного чипа (CPU или GPU а также моста), качества охлаждения и везения.
Alexmur07 вне форума   Ответить с цитированием
Старый 11.05.2019, 22:29   #4
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 18,570
Репутация: 3570

icq: 512-765
skype: alexp.frl
По умолчанию

https://www.google.com/search?q=java...te+many+to+one
Alex11223 вне форума   Ответить с цитированием
Старый 11.05.2019, 23:13   #5
Alexmur07
Форумчанин
 
Регистрация: 20.11.2008
Адрес: Новосибирская область
Сообщений: 119
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
https://www.google.com/search?q=java...te+many+to+one
баян)) это всё гуглил, получение объектов из бд работает, не работает запись, т.е. данные записываются но только не отмечаются значения в таблице с ручками (к какому пиналу они принадлежат) я могу конечно делать по тупому - сначало добавлять отдельно пинал, и получать id пинала и добавлять потом в ручку значения id пинала а потом добавлять объект кучку но это как то по тупому
__________________
Разгон – вещь не определённая,
по этому конечный результат зависит от конкретного чипа (CPU или GPU а также моста), качества охлаждения и везения.
Alexmur07 вне форума   Ответить с цитированием
Старый 11.05.2019, 23:25   #6
Alexmur07
Форумчанин
 
Регистрация: 20.11.2008
Адрес: Новосибирская область
Сообщений: 119
Репутация: 10
По умолчанию

еслиб я нашёл в гугле в чём проблем почему нет записи индентификатора в бд , то тут бы не спросил, прошу подсказать
__________________
Разгон – вещь не определённая,
по этому конечный результат зависит от конкретного чипа (CPU или GPU а также моста), качества охлаждения и везения.
Alexmur07 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно работать с $_POST? Руслан Роккер PHP 6 27.01.2012 12:22
(C#) MS Visual Studio 2008. Как работать с объектами разных окон? cherw9!40k Общие вопросы .NET 12 23.01.2010 17:55
как правильно работать с функциями в С++ серг Помощь студентам 2 08.12.2009 00:46
Учимся правильно работать Gromsky WordPress и другие CMS 2 11.09.2009 14:27


01:05.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru