0

我阅读了文档,发现要读取 jpa 数据,我需要使用以下代码。这是通过 sql 从 JPA 表中读取数据的唯一方法吗?

 factory = Persistence.createEntityManagerFactory("abc");
EntityManager entityManager = factory.createEntityManager();
Query query = entityManager.createQuery("SELECT p FROM " + className + " p");
4

1 回答 1

2

有几种使用 JPA 读取数据的方法。您提供的示例是使用JPQL。此外,您还可以:

  1. 通过以下方式执行本机 SQL 查询EntityManager#createNativeQuery(String nativeSql)

    Query q = entityManager.createNativeQuery("SELECT * FROM MY_TABLE");
    
  2. 使用标准 API

  3. 使用以下方法通过其主键检索单个实体EntityManager#find(...)

    MyObject myObject = entityManager.find(MyObject.class, myObectId);
    
于 2013-06-01T20:14:02.913 回答