【问题标题】:Creating Java Entity Classes in Netbeans在 Netbeans 中创建 Java 实体类
【发布时间】:2016-06-24 15:26:14
【问题描述】:

我正在尝试学习 JavaFX,以便创建与数据库通信的桌面应用程序(目前使用 SQLite)。

到目前为止,Netbeans 能够连接到 SQLite 数据库。我相信下一步是创建表示数据库表的实体类,所以我继续在 Netbeans 中完成了这项工作:文件 > 新项目 > Java > Java 类库。然后在 Projects 窗口 > 右键单击​​项目 > File > New File > Persistence > "Entity Classes from Database"

现在我的项目窗口如下所示:

我的问题是:

  1. 下一步是什么?
  2. 如何在我的 HelloWorld 项目中使用实体类?

谢谢!

【问题讨论】:

  • Netbeans 有一个很棒的教程,介绍如何在 EJB 环境中访问您的数据库:netbeans.org/kb/docs/javaee/ecommerce/entity-session.html 它从将 IDE 连接到您的 mySQL 数据库、从中创建实体并使其可供其他人使用通过外墙的框架。您应该查看“添加会话 Bean”部分。希望对您有所帮助。

标签: java sqlite netbeans


【解决方案1】:

我编写了许多同时使用 JavaFX 和 JPA 的小型应用程序。 JPA 在 Web 服务器应用程序领域得到了更多的推广,但它当然也可以在 JavaFX 项目中工作,在这种情况下,您将使用“应用程序托管实体管理器”。

这是您的第一步:让实体管理器可用于您的代码。鉴于 Netbeans 已为您的项目保存了一个 persistence.xml,您应该能够通过以下几个步骤来获取实体管理器:

// Declare variables as part of an application or controller class
EntityManagerFactory factory = null;
EntityManager entityManager = null;

// Attempt to get a connection somewhere in your code:
// Perhaps startup, but that's not always ideal
// especially if it delays appearance of your application.
factory = Persistence.createEntityManagerFactory("MyDataPU");
entityManager = factory.createEntityManager();

您需要通过匹配 persistence.xml 中的 PU(持久性单元)名称来确认 createEntityManagerFactory() 的正确参数。此时在您的代码中,只要您的 entityManager 不为空,您现在应该拥有检索记录、执行查询或执行存储过程所需的内容。最基本的操作是使用 find() 操作检索您的 Person 实体之一:

Person oPersonAdmin = entityManager.find(Person.class, 1);

...作为示例,它将检索 ID 为 1 的 Person:假设这是一个简单应用程序中的主用户。

为了更灵活地检索数据,您需要使用 TypedQuery,它由 EntityManager 基于 JPQL 查询字符串(类似于 SQL)和指定返回数据的类的参数生成。有关详细信息,请参阅 API:

CreateQuery(String qlString, Class<T> resultClass)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-04
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多