1

我正在创建一个用于研究项目的小程序。我在 NetBeans 中使用 Master Detail 模板,它工作正常,直到我需要将 WHERE 添加到 Master 检索到的行中。Model 类中有一系列 Java @ 注释,其中包含针对结果集中所有列的带有 WHERE 子句的查询。例如

@NamedQueries({ @NamedQuery(name = "Topic.findByTopicId", query = "SELECT t FROM Topic t WHERE t.topicIc = :topicId"),

有一整套这些。这就是我想要使用的,但我找不到如何设置查询。查询设置在我无法更改的代码中,因为 NetBeans 创建并冻结了它。

查询 = java.beans.Beans.isDesignTime() ?null : entityManager.createQuery("SELECT t FROM Topic t");

NetBeans 创建的还有一个 persistence.xml 文件,其中包含 JDBC 连接信息和 Model 类的名称。

我有近 15 年的使用 Java 的经验,但总是作为命令行或后端,但从不作为 GUI。这似乎是让我的项目进行的一种快速方法,但如果我不能改变它,我需要找到不同的解决方案。谁能解释如何更改 EntityManager 使用的查询?

4

1 回答 1

0

您可以在 Netbeans 7.2 中以这种方式访问​​它:单击“设计”,然后单击您的设计元素之一(不管是哪一个),然后单击鼠标右键。在弹出菜单中,选择“自定义代码...”。将出现一个名为“代码定制器”的对话框。在左上角,选择“查询”。下面,选择“自定义创建”,而不是“默认代码”。在那里您将能够编辑您的初始化代码。

于 2012-09-24T13:53:12.010 回答