2016-04-28 94 views
0

在线上的很多例子中,我看到有人在他们的实体类之前添加@NamedQuery,我删除了注解并且它仍然有效,所以我很好奇是否需要将这个注释添加到实体中?顺便说一句,我使用Spring数据作为JPA供应商。将实体映射到视图时是否需要@NamedQuery?

这里最好的做法是什么?为什么?

@Entity 
@NamedQuery(name = "User.findByEmailAddress", 
    query = "select u from User u where u.emailAddress = ?1") 
public class User { 
    //Do stuff 
} 

回答

0

不,不需要命名查询。它们允许您预定义查询,然后在运行时使用它们,而不是动态创建每个查询。这在文档​​中有描述