【发布时间】:2018-09-05 23:41:58
【问题描述】:
这是我的 JPA 代码 我正在使用 jpa、jsf、primefaces 和 maven。我也在使用mysql。实际上,如果没有数据库,我可以将 bean 数据访问到我的 jsf 页面中,但这些现在不起作用。我正在共享代码。
public class UsersJPA {
EntityManager em;
EntityManagerFactory emf;
private List<Users> users = new ArrayList<>();
public UsersJPA()
{
emf = Persistence.createEntityManagerFactory("com.kanbagisi_kanbagisi_war_1.0PU");
em = emf.createEntityManager();
em.getTransaction().begin();
}
public List<Users> getUsers()
{
try
{
users = em.createNamedQuery("Users.findAll",Users.class).getResultList();
return users;
}
catch (Exception e)
{
return users;
}
}}
这是我的 ManagedBeans 代码。实际上我希望你使用 CDI,但我是初学者。我也在使用 netbeans IDE。
@ManagedBean
@SessionScoped
public class testBean implements Serializable {
private List<Users> userss = new ArrayList<>();
private UsersJPA ujpa = new UsersJPA();
public testBean() {
}
public List<Users> getUserss() {
return userss;
}
public void setUserss(List<Users> userss) {
this.userss = userss;
}
public UsersJPA getUjpa() {
return ujpa;
}
public void setUjpa(UsersJPA ujpa) {
this.ujpa = ujpa;
}
public List<Users> getir()
{
userss = ujpa.getUsers();
return userss;
}
}
Jsf 代码(Primefaces)
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
<h:form>
<p:dataTable value="#{testBean.getir()}" var="veri" >
<p:column headerText="SURNAME">
<h:outputText value="#{veri.surname}"/>
</p:column>
</p:dataTable>
</h:form>
</h:body>
【问题讨论】:
-
离题:阅读stackoverflow.com/questions/2090033/…,你的“beans”课程在哪里?
标签: jsf managed-bean