假设实体中有一些命名查询,那些命名查询应该如何评论?有没有办法将它们映射到创建的javadoc?
@Entity
@NamedQueries({
@NamedQuery(name="Country.findAll",
query="SELECT c FROM Country c"),
@NamedQuery(name="Country.findByName",
query="SELECT c FROM Country c WHERE c.name = :name"),
})
public class Country {
...
}
目前我已将评论(非javadoc)放在行中,但我不太喜欢。
// find all countries
@NamedQuery(name="Country.findAll", query="SELECT c FROM Country c")
答案 0 :(得分:6)
我用来将Query的名称定义为实体类中的常量。当然可以评论这个常数:
@Entity
@NamedQueries({
@NamedQuery(name=Country.QUERY_FIND_BY_NAME,
query="SELECT c FROM Country c WHERE c.name = :name"),
})
public class Country {
/**
* Description of the Query. Bla bla.
*/
public static final String QUERY_FIND_BY_NAME = "Country.findByName";
...
}
作为奖励,您可以在创建命名查询时使用此常量而不是String:
em.createNamedQuery(Country.QUERY_FIND_BY_NAME, Country.class);