Я создал конечную точку Jax-RS с интеграцией JPA, где я пытаюсь сделать запрос на основе общего имени, создать запрос, получить данные из базы данных.
@Override public Set<E> get() {
EntityManager em = emf.createEntityManager();
List<E> results = null;
try {
results = em.createQuery("SELECT e FROM " + entityClass.getSimpleName() + " e", entityClass)
.getResultList();
} finally {
em.close();
return new HashSet<E>(results);
}
}
когда я делаю экземпляр своего репозитория, я задаю имя класса и первичный ключ в базе данных SQL (обычно целое число)
public class BaseRepository<E, PK> implements CRUDOperations<E, PK> {
private Class<E> entityClass;
protected EntityManagerFactory emf;
}
Я попробовал это для фиктивного класса, простострока, в ней работает нормально, я проверял ее в отладчике.
однако, когда я пытаюсь сделать это для фактического класса, который я создал, я просто возвращаю нулевое значение (даже не пустой набор =
, наконец, я проверил базу данных, и таблицы имеют одинаковое имя вбазы данных, и это соответствует.