我需要在jsp页面中手动显示数据库中的数据。但它不会显示。在jsp页面显示数据
我的实体:
@Entity
@NamedQuery(name="Contact.getAll", query="SELECT c FROM Contact c")
public class Contact implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private String login;
private String name;
private String surname;
getters/setters/equals/hashcode
Bean来管理JSP:
public class DisplayDataBean {
private EntityManagerFactory emf = Persistence.createEntityManagerFactory("ContactsPU");
private EntityManager em = emf.createEntityManager();
private List<Contact> contacts = em.createNamedQuery("Contact.getAll", Contact.class).getResultList();
public List<Contact> getContacts() {
return contacts;
}
}
和JSP页面片段:
<c:forEach var="contact" items="${DisplayDataBean.contacts}">
<tr>
<td><c:out value="${contact.login}"/></td>
<td><c:out value="${contact.name}"/></td>
<td><c:out value="${contact.surname}"/></td>
</tr>
</c:forEach>
你能告诉什么可以在这里是错误的?提前致谢。
而且当我工作与
<sql:query var="contacts" dataSource="jdbc/contactapplication">
SELECT * FROM contact;
</sql:query>
一切都很好。
问题是我没有声明DisplayDataBean。 解决办法是在JSP页面中添加标签:
<jsp:useBean id="displayBean" class="web.DisplayDataBean"/>
那么我不使用弹簧或servlets。这只是3个文件。属性项目应该获得联系人列表。 – ihavelostmypants