为什么EL值在Spring MVC中没有正确显示?

时间:2017-11-26 11:37:59

标签: spring jsp spring-mvc jstl

我目前正在对评论进行评论。

但它们会引发问题。

如果您对第一条评论发表评论,它将会很好地显示。 但是,当您创建新注释时,将不会显示已创建的注释列表。

代码如下所示。

BoardController.java

@RequestMapping("viewPage.do")
public String viewPage(HttpSession session,HttpServletRequest request, HttpServletResponse response,Model model, 
        @RequestParam(value="board_idx", defaultValue="0") int board_idx) throws IOException,IllegalStateException
{
    checkLogin(request, response, session);

    int idx = (int) session.getAttribute("idx");
    //System.out.println("idx >> " + idx);

    Board boardData = bService.readBoard(board_idx);
    //System.out.println("boardData >> " + boardData);

    Member memberData = bService.memberNickName(idx);
    //System.out.println("memberData >> " + memberData);

    // Select Comment of Comment List
    List<HashMap<String, Object>> commentList= bService.getBoardForComment(boardData.getBoard_idx());


    // loop (comment.size)
    for(int i = 0; i < commentList.size(); i++)
    {
        int board_comm_idx= (Integer) commentList.get(i).get("board_comm_idx");
        List<HashMap<String, Object>> getCommentOfComentList = 
                bService.getBoardCommentOfComment(board_idx, board_comm_idx);
        if(!getCommentOfComentList.equals("") || !getCommentOfComentList.isEmpty())
        {
            model.addAttribute("cocList", getCommentOfComentList);
            System.out.println("GetCommentOfCommentList : " + getCommentOfComentList);
        }
    }

    model.addAttribute("boardInformation", boardData); // BoardInformation
    model.addAttribute("memberNickName", memberData); // MemberInformation
    model.addAttribute("commentList", commentList); // CommentInformation
    return "viewPage";
}

viewPage.jsp

<c:if test="${cocList ne null && not empty cocList}">
                            <c:forEach items="${cocList}" var="cocList">
                            <div class="commentList" style="margin-left:70px">
                            <div class="what">
                                <div class="nickname">
                                    <span>
                                        ${cocList.board_c_of_c_writer}
                                    </span>
                                </div>
                                <div class="writedatezone" style="margin-left: 715px;">
                                    <span class="era">
                                        <span class="glyphicon glyphicon-time enterReReply"></span>
                                        <span class="commentWriteDate">
                                            <fmt:formatDate value="${cocList.board_c_of_c_writeDate}" pattern="yyy-MM-dd"/>
                                        </span>
                                    </span>
                                </div>
                                <div class="duzone">
                                    <span class="deleteOrUpdateComment">
                                        <a class="updateComment">수정</a>
                                        <a class="deleteComment">삭제</a>
                                    </span>
                                </div>
                                </div>
                            <pre>${cocList.board_c_of_c_content}</pre>
                        </div>
                        </c:forEach>

viewPage是一个页面,您可以在其中查看相应帖子的详细信息。

该页面包含有关撰写帖子的成员,有关帖子的信息,评论信息以及评论中有关评论的信息的信息。

在我看来,来自BoardController

model.addAttribute("cocList", getCommentOfComentList);

我认为这部分存在问题。

我的评论循环遍历commentList的大小,获取评论的评论列表,并将列表放在模型中。

但是,在我提出问题的部分,只有我写的最后一条评论的评论值包含在模型中。

并且,我认为每个评论列表都应该在评论中有一个评论列表。

你认为我的观点是对的吗?如果是这样,我该如何修改代码?

我们无法解决此问题,无法继续下一步。您的意见很有价值。请告诉我你的意见。如果您需要更多信息,请告诉我。

0 个答案:

没有答案