【发布时间】:2013-01-02 11:01:42
【问题描述】:
我正在使用 Netbeans 中的 JPA 在 JSF 2.0 中做我的第一个应用程序。
-
如何在 JSF 中对我的 Java 实体使用不同的命名查询?例如我有这个实体,
@Entity @Table(name = "user") @XmlRootElement @NamedQueries({ @NamedQuery(name = "User.findAll", query = "SELECT u FROM User u"), @NamedQuery(name = "User.findById", query = "SELECT u FROM User u WHERE u.id = :id"), @NamedQuery(name = "User.findByUser", query = "SELECT u FROM User u WHERE u.user = :user"), @NamedQuery(name = "User.findByPassword", query = "SELECT u FROM User u WHERE u.password = :password"), @NamedQuery(name = "User.findByMail", query = "SELECT u FROM User u WHERE u.mail = :mail")}) public class User implements Serializable { private static final long serialVersionUID = 1L; @Id @Basic(optional = false) @NotNull @Column(name = "id")7 private Integer id;我希望在 JSF 中可以选择使用不同的命名查询,例如
findByMail、findByUser等。 我看到在 Netbeans 生成的代码中,我有一个
Vector,其结果为findAll。这样好吗?如果我的数据库中有很多数据,这不会是一个大向量吗? 100 个查询中的 100 个不是更好吗?生成的 JSF 页面总是一样的。这是正常的吗?我可以生成网址吗?
【问题讨论】:
-
请格式化您的代码。