我正在使用 eclipse kepler 和 JBoss 工具。 假设我有一个名为“People”的类,在这个类中我有一个 org.hibernate.annotations.NamedQuery 或 javax.persistence.NamedQuery,名称为“People.findActives”。 当我工作时,为了调用这个命名查询,我会这样写:
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
。
关于java - 在 Eclipse 中显示命名查询建议/警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20957463/