在Netbeans中创建Java实体类

时间:2016-06-24 15:26:14

标签: java sqlite netbeans

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

到目前为止,Netbeans能够连接到SQLite数据库。我相信下一步是创建表示数据库表的实体类,所以我继续在Netbeans中做到了: File>新项目> Java> Java类库。然后在项目窗口>右键单击项目>文件>新文件>持久性> “来自数据库的实体类”

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

enter image description here

我的问题是:

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

1 个答案:

答案 0 :(得分:0)

我已经使用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不为null,现在就应该具有检索记录,执行查询或执行存储过程所需的内容。最基本的操作是使用find()操作来检索您的Person实体之一:

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

...例如,它将检索ID为1的Person,并假设该用户是简单应用程序中的主要用户。

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

CreateQuery(String qlString, Class<T> resultClass)