在jsp和spring mvc中迭代出勤列表

时间:2016-11-17 09:37:53

标签: java spring jsp spring-mvc

您好我正在使用jsp和spring mvc。 我正在尝试显示学生表中的sutdent名称,父亲姓名和来自考勤表的布尔标志。 我可以从下面的查询中获取所需的列表,

查询

 List<AttendanceCommandName> studentsList = (List<AttendanceCommandName>) session.createQuery("select     a.studentId,s.studentName,s.fatherName,a.presentFlag from Attendance a,Student s where a.studentId = s.studentId and s.departmentId="+classid+" group By a.studentId").list();

此处AttendanceCommandName类包含学生和出勤实体

我的jsp迭代看起来像这样,

<c:if test="${!empty studentsList}">
      <c:forEach items="${studentsList}" var="student">
         <tr>
            <td>${student.studentId}</td>
            <td>${student.studentName}</td>
            <td>${student.fatherName}</td>
            <td> <input type="checkbox" path="student.presentFlagList" value="${student.studentId}" /></td>
      </c:forEach>
</c:if> 

我能够在[[Ljava.lang.Object; @ 6d987577这种格式]中获取对象 无法在jsp中迭代任何正文请在这方面建议我。

2 个答案:

答案 0 :(得分:0)

在您的Hibernate查询中,它返回Object对象数组列表而不是自定义对象的学生列表,因此将其更改为

List<Object[]> objList= (List<Object[]>) session.createQuery("select a.studentId,s.studentName,s.fatherName,a.presentFlag from Attendance a,Student s where a.studentId = s.studentId and s.departmentId="+classid+" group By a.studentId").list();

在java中迭代此对象数组列表并创建学生列表

List<AttendanceCommandName> list=new ArrayList<>;
for(Object[] o:objList){
    AttendanceCommandName s=new AttendanceCommandName();
    s.setId=o[0];
    s.setstudentName=o[1];
    s.setfatherName=o[2];
    s.setpresentFlag=o[3];
//type cast above attribute as per your variables
list.add(s);
}

现在在jsp

中迭代此列表

答案 1 :(得分:0)

应该是<c:if test="${not empty studentsList}">而不是<c:if test="${!empty studentsList}">