Можно / нужно использовать JPA для возврата значений, а не сущностей? - PullRequest
2 голосов
/ 17 ноября 2009

Я использую JPA для проекта и в большинстве случаев хочу получить сущности, но есть несколько случаев (сообщая, что это один из них, но есть и другие), когда я не хочу или не хочу получать сущности, а точнее хочу выбор ценностей. JPA поддерживает это? Если да, имеет ли смысл использовать его или имеет смысл использовать прямой JDBC в этих случаях?

Ответы [ 2 ]

8 голосов
/ 17 ноября 2009

1: Да, это так.

Это так называемые скалярные запросы, например ::1003

select u.name from User u 

в отличие от

select u from User u

Q2: Когда дело доходит до смысла его использования: Такие запросы имеют смысл - вам просто нужно одно свойство, а не весь объект. Но если вы планируете делать все ваши запросы только с отдельными значениями, тогда возникает вопрос «почему?». кажется действительным. Основная идея картографов O / R - позволить вам работать с объектами, а не с (связанными) таблицами и идентификаторами. Поэтому выбор идентификаторов с использованием JPA обычно не имеет смысла. Как только у вас есть объекты, сопоставленные с базой данных, вам будет проще работать с данными.

0 голосов
/ 17 ноября 2009

SQLResultsetMappingWithAlias ​​ на java2s.com, кажется, является примером того, что вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...