Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Получение результата процедуры на удаленную базу


Автор: MisterCleric 25.3.2008, 19:07
Привет всем.
В общем ситуация такая.
У меня есть две схемы базы, но приложение замеплено только на одну и соответственно есть сущности на эту базу.
Но также есть вторая схема, из которой я должен получать данные.
принято такое решение, что доступ к ней возможен из пакета-делегата. В нем лежат процедурки и функции, которые и делают запросы на эту схему.
В общем проблема такая: как в Hibernate замепить результат вызова такой процедуры? Класс, который представляет результат уже написал, но вот трабла, что надо ему как-то сказать, что он результат запроса
Не хочеться перебирать ResultSet

Автор: MisterCleric 26.3.2008, 10:36
Привет. в общем проблем решилась

Мой класс представления данных меплю как обычно

Код

@Entity
@org.hibernate.annotations.Entity(mutable = false)
@org.hibernate.annotations.AccessType("field")
public class RemoteData implements Serializable {
    @Id
    @Column(name = "ID")
    private Long id;
...


Hibernate воспринимает его как обычную сущность и говорит, что мепит ее на таблицу REMOTEDATA со всему полями

естественно, что такой таблицы в моей схеме нету, но такой курсор возвращает моя процедурка
Код

<sql-query name="remoteData" callable="true">
        <return class="myprg.RemoteData"/>
        { ? = call PKG_REMOTE.remote_data_by_user(:userId) }
</sql-query>


и отлично все возвращает  smile

Всем кому интересно могу рассказать в деталях

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)