автоматом мапится resultset в DTO. Но вот незадача, в одной из кверей наряду с другими пропертями нужно вытащить ещё и лист. Могу ли я одним jpql обойтись и 1 query?
Можно попробовать джойны использовать
То есть джойн и сабкверя?
Если JPQL, то, например “SELECT DISTINCT d FROM Department d LEFT JOIN d.employees e”, а сами отношения уже прописаны в @Entity. Если native, то я таким шаманством не занимался и руками маппер писал для этого.
Да не все так просто, лист у меня не из коллекций чайлдов. List<String> я беру из разных таблиц, например вычислить профит по каждому месяцу в этом году и загнать в лист
Вы projections используете?
Я бы такое руками маппил через JDBC, либо сделал вьюшку, которая выполняет роль сабселекта и получал вместо коллекции стрингов коллекцию объектов, которые наружу маппил бы в стринги. Но, не скажу что это прям best practice. Коллеги, подправьте, если есть что-то лучше
После долгих мучений с проекциями, все таки буду через jdbcTemplate ручками маппить. Спасибо)
Спасибо что написали. Буду знать, что всё-таки вариант с ручками никуда не денется)
А с чем проекции не справляются?
Выше я уже писал, что мне нужно с базы тянуть не энтитю, а дто с разных энтити. А проекция без конкретной завязки на какую-то энтитю не работает
на самом деле работает
Обсуждают сегодня