从Session获取对象列表并在不使用JSTL的情况下进行迭代

时间:2016-11-15 03:09:50

标签: list jsp session getattribute

我想要尝试的是在我的控制器的会话中设置List <Object>的属性。然后在我的jsp文件中从会话中获取对象列表并通过循环显示列表值。

我的控制器

//RecordView recordViewSingle = dao.getRecords();
//request.getSession().setAttribute("SingleRecord", recordViewSingle);
List <RecordView> recordView = dao.getRecordDetails();
request.getSession().setAttribute("AllRecord", recordView);

JSP

<%
    //RecordView data = (RecordView)session.getAttribute("SingleRecord");
    List <RecordView> data = (RecordView)session.getAttribute("AllRecord");
%>

<table>
...
...
    <% for(int i = 0; i < data.size(); i+=1) { %>
        <tr>      
            <td><%=data.get(i).getDataID()%></td>
            <td><%=data.get(i).getDataName()%></td>
            <td><%=data.get(i).getLastDate()%></td>
        </tr>
    <% } %>

...
...
</table>

但是得到错误说:List cannot be resolved to a type并指出下面的代码:

List <RecordView> data = (RecordView)session.getAttribute("AllRecord");

如果我使用单Object,我可以成功运行此程序,但在使用list <Object>时则不能帮助我解决此问题。如果我以前用于检索表中数据的方式是错误的,那么也要纠正我。提前谢谢。

2 个答案:

答案 0 :(得分:0)

我找到了答案。犯了两个错误。首先,我忘了在顶部导入$100.00。第二个错误是它应该是

outline: none;

而不是使用此

git branch -f master B3
git checkout master

答案 1 :(得分:0)

每当提到“无法解析为某种类型”的错误时 - 始终记住它拼写错误或导入丢失。在您的情况下,如果您错过了导入,请检查一下

第二点是 - 你的演员

<%
    //RecordView data = (RecordView)session.getAttribute("SingleRecord");
    List <RecordView> data = (RecordView)session.getAttribute("AllRecord");
%>

转换应该是(List)session.getAttribute(“AllRecord”);

希望这有帮助