Вызывает ли JVM конвертор, когда мы получаем поля из БД напрямую для DTO
Есть запрос в Dao слое такого плана:
return entityManager.createQuery("select new models.dto.chat.NewDto(" +
"id, title, image) from SomeClass", NewDto.class)
Обращается ли в конвертор java, для того что бы собрать сущность с указанными полями, а потом конвертировать и вернуть в контроллер Dto? Или явно по указанным полям создаётся сущность Dto и участие конвертора здесь нет? Спасибо всем кто пишет по делу! =)
Ответы (1 шт):
Автор решения: Roman Konoval
→ Ссылка
Тут конвертор никак не используется.
В данном куске кода объект типа NewDto создается явно с помощью конструктора из полей сущности SomeClass. Реализация JPA ищет в NewDto конструктор с параметрами соответствующих типов и вызывает его, чтоб создать объекты.