Собственный запрос JPA для выбора и приведения объекта

У меня есть объектAdmin который расширяетсяUser, По умолчанию оба объекта находятся в таблице.User_ моей базы данных Derby (включены поля изAdmin). Обычно я бы выбралUser нравится:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<User> query = cb.createQuery(User.class);
Root user= query.from(User.class);
Predicate predicateId = cb.equal(category.get("id"), id);
query.select(user).where(predicateId);
return em.createQuery(query).getSingleResult();

Однако из-за сложности моего запроса я использую собственный запрос, подобный следующему:

Query query = em.createNativeQuery("SELECT USER.* FROM USER_ AS USER WHERE ID = ?");
query.setParameter(1, id);
return (User) query.getSingleResult();

Хотя это бросает исключение броска. Я полагаю, что это связано с любыми полями изAdmin.

У меня вопрос, как я могу выбратьUser использование собственного запроса с таким же результатом, как в первом примере (включая те же значения для@LOB а также@ManyToOne (и так далее), как будет возвращать запрос JPQL)?

Ответы на вопрос(4)

Ваш ответ на вопрос