可以让Eclipse的“JPA Details”视图的Query文本框更大吗?

时间:2012-07-16 23:06:17

标签: eclipse jpa jpql dali

我花了很长时间才弄清楚如何让JPQL自动完成在eclipse中工作。 我能看到的唯一地方是添加一个< mapping-file> 在我的persistance.xml和映射.xml文件中,我可以定义一个< named-query> 。然后,如果我添加“JPA详细信息”视图并选择我要编辑的查询,我会得到一个很小的4行文本框 我必须编辑我的查询。只有在这个小文本框中才能获得内容帮助。

A)有没有办法破解这个文本框更大? (我的查询非常复杂,我需要更多行)

B)还有其他更大的地方可以获得JPQL内容吗?

(我在Indigo 3.7和Juno 4.2中有同样的问题)

1 个答案:

答案 0 :(得分:2)

内容助手也可以通过@NamedQuery注释获得。如果您在XML文件中存储配置或在Entity类上使用注释没有区别,那么您可以利用后者。一旦开始编辑@NamedQuery的'query'元素,就可以使用与JPA Details / Queries中相同的内容助手。它给你足够的空间;但是,由于它是Java代码中定义的String常量,因此在查询拆分为多行时,您必须处理额外的引号和连接。同时,您可以在JPA详细信息视图中查看此查询。

对于JPA详细信息视图,我怀疑此查询编辑框是否可配置,除非修改插件源和重建。

编辑在回应评论(3)时, - 这是'方向':

  • JPA详细信息视图以及org.eclipse.jpt.jpa.ui插件中定义的面板/窗格
  • 命名查询编辑视图在类NamedQueryPropertyCompositeNamedQueryProperty2_0Composite中为JPA v1和JPA v2定义。
  • 将命名查询编辑器框调整为4行的代码片段,如下所示:

    adjustMultiLineTextLayout(
        4,
        provider.getStyledText(),
        provider.getStyledText().getLineHeight()
    );
    

..其中4是行数。

源代码可以在这里找到:pserver:anonymous@dev.eclipse.org:/ cvsroot / webtools(不确定它们针对哪个特定的Eclipse版本,但这肯定比Indigo的新版本更新)。