Я новичок в EJB и пытаюсь разобраться с переводом концепций SQL в бины сущностей EJB.
Предположим, у меня есть две таблицы: PEOPLE (id, name), CONTACT (pid, phone_number). Если я хочу получить список всех людей, независимо от того, есть ли у них телефонные номера, в моем EJB-сеансе я просто выдаю SQL-запрос через JDBC, такой как:
SELECT PEOPLE.name, CONTACT.phone_number
FROM PEOPLE
LEFT JOIN CONTACT ON PEOPLE.id = CONTACT.pid
Вместо того, чтобы использовать SQL / JDBC, теперь я хочу использовать EJB-сущностные бины. Поэтому я создаю соответствующие классы EJB3-компонентов для своих таблиц.
Итак, теперь у меня есть доступ к обоим классам сущностей из моего сессионного компонента, и я больше не хочу получать доступ к своим таблицам базы данных напрямую через SQL / JDBC из моего сессионного компонента. Я только хочу использовать свои сущностные компоненты и возможности JPA. Каков правильный дизайн EJB, чтобы в моем сессионном компоненте я получал те же результаты, что и мой SQL-запрос?
Мне неясно, как использовать классы EJB-сущностей для получения тех же результатов, что и мой запрос на внешнее соединение SQL. Помощь.