Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
 Hibernate  [new]
INFINITs
Member

Откуда:
Сообщений: 65
Добрый день, всем.

Есть такая ситуация. Нужна выполнить некий запрос к одной БД, получить данные и переложить данные в другую БД.
Есть некая модель допустим Машина.
Так вот когда к первой БД обращаешься можно получить 2 результата(взависимости от той функции к которой обратился).
Просто весь объект машина(если обратился к функции 1) или же весь объект машина +2 поля(если обратился к функции 2).


1)Так вот могу ли я как-то перегрузить анатации хибера, чтобы управлять вот этими 2 полями(т.е. если я обращаюсь к 1 функции то хибер игнорировал их отсутствие), когда ко второй наоборот дописывал в sql query.


2)Так же можно ли, как-то перегружать маппер?(т.е. если я хочу написать кастопный маппер, как собирать sql запросы)?

3)И как хибер дружит с наследованием. Т.е. если у меня будет абстрактыный класс допустим Транспорт, от него я отнаследую класс Машина и т.д. и т.п.?
4 мар 19, 13:43    [21824327]     Ответить | Цитировать Сообщить модератору
 Re: Hibernate  [new]
mad_nazgul
Member

Откуда:
Сообщений: 4592
INFINITs,

1) Зачем?! Можно сделать эти два поля nullable
2) Я использую или Spring Data Jpa, или JdbcTemplate
В первом случае делается @Repository c @Query(nativeQuery = true)
Во втором случае нужно создать свой Mapper (можно через ананоимный класс)
3) Дружит, но не очень хорошо.
Я например делал через интерфейсы, хотя можно и через классы, но нужно "заморочится"
4 мар 19, 13:54    [21824349]     Ответить | Цитировать Сообщить модератору
 Re: Hibernate  [new]
INFINITs
Member

Откуда:
Сообщений: 65
1) Зачем?! Можно сделать эти два поля nullable

Чуть-чуть видимо некорректно описал. Эти 2 поля нужны только для анализа на стороне бэка при перегоне данных, но в новой базе они ненужны.

Поэтому переформулирую вопрос, можно ли как-то описать поле чтобы в новой БД хибер не создавал по нему автоматом колонку.
Но при этом взависимости от запроса к старой БД(если запрос с этим полем, и если запрос без этого поля) парсил в него значение из старой БД?
4 мар 19, 14:36    [21824429]     Ответить | Цитировать Сообщить модератору
 Re: Hibernate  [new]
mad_nazgul
Member

Откуда:
Сообщений: 4592
INFINITs
1) Зачем?! Можно сделать эти два поля nullable

Чуть-чуть видимо некорректно описал. Эти 2 поля нужны только для анализа на стороне бэка при перегоне данных, но в новой базе они ненужны.

Поэтому переформулирую вопрос, можно ли как-то описать поле чтобы в новой БД хибер не создавал по нему автоматом колонку.
Но при этом взависимости от запроса к старой БД(если запрос с этим полем, и если запрос без этого поля) парсил в него значение из старой БД?


Можно см. @Transient
5 мар 19, 08:04    [21825012]     Ответить | Цитировать Сообщить модератору
Все форумы / Java Ответить