繁体   English   中英

在Eclipse中显示已命名的查询建议/警告

[英]Show named query proposals/warnings in eclipse

我正在使用JBoss工具使用eclipse kepler。 假设我有一个名为“ People”的类,在该类中有一个名为“ People.findActives”的org.hibernate.annotations.NamedQueryjavax.persistence.NamedQuery 当我工作时,要调用此命名查询,我会这样写:

entityManager.createNamedQuery("People.findActives").list();

使用javax.persistence.EntityManager时,或

session.getNamedQuery("People.findActives").list();

使用org.hibernate.Session时。

但是,假设我们团队中的某个开发人员只是在People类中更改了查询的名称。 他可以做到,并且代码不会指责任何错误或警告,因此代码将不一致。 另一件事是,当按Ctrl + Space时,如果eclipse搜索所有命名的查询并显示建议,那将非常酷。

有人对此有解决方案吗?

您可以为查询名称定义字符串常量,并在各处使用常量代替名称字符串,例如:

@NamedQuery(name=Poeple.FIND_ACTIVITIES, ...)
public class Poeple {
    public static final String FIND_ACTIVITIES = "findActivities";
    ...
}

我已将常量名称改为大写,以遵守常见的Java约定,但如果您确实愿意,可以使用findActivities

我的文章“ 避免对Hibernate属性进行硬编码”介绍了我处理要避免的确切问题的方法。

我的解决方案有一些局限性,但确实有效。 希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM