AI有这个代码: fileOne.java: ...
em.persist(new Item("A1","B1","C1","A.jpg","abc"));
em.persist(new Item("A2","B2","C2","B.jpg","abc"));
em.persist(new Item("A3","B3","C3","C.jpg","abc"));
...
fileTwo.jsp:
@SuppressWarnings("unchecked")
List<Item> myList = (List<Item>)request.getAttribute("Item");
%>
<span style="font-size: 150%; color: black; text-decoration: underline;">List:</span>
<table id="Table" style="display:block;">
<tr>
<th>A</th>
<th>B</th>
<th>C</th>
</tr>
<% if(myList != null){
int counter = 0;
for (Item Citem: myList ) { %>
<tr>
<td id="viewA<%=counter%>" ><%= Citem.getA()%></td>
<td id="viewB<%=counter%>" ><%= Citem.getB()%></td>
<td id="viewC<%=counter%>" ><%= Citem.getC()%></td>
<td id="viewImage<%=counter%>"><img alt="itemimg" src="ItemsImage<%= Citem.getImageUrl() %>" width="52" height="52"></td>
</tr>
<% counter++;
}
}
else{
%> Empty;
<%}
%>
</table>
...
我想在HTML页面的表格中查看List<Item>
。
并且我在页面中只显示“空”(以及标题“列表”)。
我做错了什么?
答案 0 :(得分:0)
如果您使用的是实体管理器,则必须编写一个返回列表的finder方法。对于前任
Query query = em.createQuery("FROM Item item WHERE item.name = ?");
query.setParameter(1, "abc");
List<Item> items = query.getResultList();
并将项目设置为请求。
request.setAttribute("Items", items);
em.persist将只保留该对象。
答案 1 :(得分:0)
我认为你应该尝试一下
JAVA代码
List<Map> em = null;
em.add( new HashMap<String, String>(){{
put("A","A1");
put("B","B1");
put("C","C1");
put("url","url1 here");
put("msg","message1 here");
}});
em.add( new HashMap<String, String>(){{
put("A","A2");
put("B","B2");
put("C","C2");
put("url","url2 here");
put("msg","message2 here");
}});
em.add( new HashMap<String, String>(){{
put("A","A3");
put("B","B3");
put("C","C3");
put("url","url3 here");
put("msg","message3 here");
}});
jsp代码
<table>
<tr>
<th>A</th>
<th>B</th>
<th>C</th>
</tr>
<c:forEach items="${Item}" var="subItem" varStatus="theCount">
<tr>
<td id="viewA<c:out value="${theCount.count}" />" ><c:out value="${subItem.A}" /></td>
<td id="viewB<c:out value="${theCount.count}" />" ><c:out value="${subItem.B}" /></td>
<td id="viewC<c:out value="${theCount.count}" />" ><c:out value="${subItem.C}" /></td>
<td id="viewImage<c:out value="${theCount.count}" />"><img alt="itemimg" src="<c:out value="${subItem.url}" />" width="52" height="52"></td>
</tr>
</c:forEach>
</table>
尝试即使你不需要检查null如果它的null然后它返回blanck表而不抛出任何异常。
并在jsp中添加以下taglib
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>