Заполнить данные объекта из нескольких таблиц, используя отображение Hibernate - PullRequest
0 голосов
/ 19 мая 2010

Я хотел бы знать, возможно ли заполнить данные класса из базы данных, используя hibernate hbm (mapping).

Например:

public class someClass {  
    List<OtherClass> otherClasses;  
    List<YetAnotherClass> yetAnotherClasses;  
    //Constructors ?  

    class OtherClass {  
        String name;  
        //setters, getters  
    }  

    class YetAnotherClass {  
        String name;  
        //setters, getters  
    }
    //setters, getters  
}

С помощью hbm я могу заполнить данные из таблиц OTHER_CLASS_TABLE и YET_ANOTHER_CLASS_TABLE?

У меня нет SOME_CLASS_TABLE, поскольку эта информация предназначена только для просмотра.

Я играл с <join table=""><subselect> и другими конструкторами ... Но это не работает

Спасибо!

Извините за мой английский!

1 Ответ

2 голосов
/ 19 мая 2010

Таким образом, у вас есть класс, который, кажется, не является реальной сущностью, поскольку у него нет идентичности для начала, верно? Тогда я думаю, вы не можете отобразить это напрямую.

В зависимости от того, как вы на самом деле используете someClass, я могу придумать следующие обходные пути:

  • если он является частью сущности, вы можете попытаться отобразить его как component - но с другой стороны, вы можете просто сопоставить содержащиеся списки непосредственно в этом случае
  • если он просто используется для хранения результатов запроса, вы можете собрать скалярный запрос, чтобы вернуть содержимое двух списков, а затем собрать ваши объекты из результатов
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...