【问题标题】:How to combine JDBC statement with EntityManager?如何将 JDBC 语句与 EntityManager 结合起来?
【发布时间】:2012-06-03 13:15:12
【问题描述】:

我使用 NetBeans 创建了我的数据库的实体类。我相信我知道如何使用 EntityManager

(Class) db.createNamedQuery(String name);

但我不知道将语句放在哪里(数据库链接、登录名、密码),所以我学会了如何查询

(JDBC4ResultSet) statement.executeQuery(String query);

但它返回了我不知道如何转换为实体类的集合......类似于

(Class) statement.execureQuery(String query).toEntity(Class);

会很好。 ;-)

【问题讨论】:

  • 不想粗鲁,但我想你不知道如何使用EntityManager。 EntityManager 使用 JDBC ,但不返回 JDBC 结果集。它根据 JPQL 查询返回实体列表或 Object[] 列表。如果您使用的是 JPA,则不必再处理 JDBC。找一个好的 JPA 教程,因为你还没有掌握基础知识。
  • 是的,我可能只是谷歌搜索错了,我很确定我需要手动管理 JDBC,并且正在搜索这样一个显然不存在的教程。 ;-)

标签: java mysql jdbc entitymanager


【解决方案1】:

好的,首先你需要从实体管理器工厂获取一个EntityManager,并使用你的persistance unit 名称(将在persistance.xml 中配置)。然后你创建一个EntityManager


    EntityManagerFactory emf=Persistence.createEntityManagerFactory("persistance_unit_name");
    EntityManager em=emf.createEntityManager();
    Query query = em.createNamedQuery("namedQueryName"); //this returns a query
    List<ENTITIY> result = query.getResultList();

这只是一个提示,您可以谷歌“jpa 示例”以找到更多工作示例。

【讨论】:

  • 谢谢,这正是我需要的! :)
猜你喜欢
  • 2021-09-18
  • 2019-08-09
  • 2014-04-05
  • 1970-01-01
  • 2020-08-03
  • 2016-12-29
  • 2015-05-18
  • 2022-12-06
  • 2020-10-31
相关资源
最近更新 更多