코드 일부분을 분석해보도록 하겠습니다
else if(command.equals("BOARDPAGE")){
// 글 상세보기
request.setAttribute("board", boardDAO.selectOne(boardDTO));
request.setAttribute("replyDatas", replyDAO.selectAll(replyDTO));
pageContext.forward("board.jsp");
}
주의깊게 보려는 부분은
request.setAttribute( ); 이고
이걸 왜 사용하고 언제 사용하는지 공부하려고 합니다
request.setAttribute("이름", 값);
request객체에 "이름=값" 형태로 데이터를 저장해둔다
그리고 forward( )로 다른 JSP 페이지로 이동하면,
그 JSP에서 이 데이터를 꺼내서 사용할 수 있다
내 코드에서는
board라는 이름으로 boardDAO.select(boardDTO) 결과 (게시글 1개 정보 객체)를 request에 저장
replayDatas 라는 이름으로 replyDAO.selectAll(replyDTO) 결과 (댓글 목록 ArrayList 등)를 request에 저장
pageContext.forward("board.jsp");
board.jsp로 페이지를 이동시키면서, 위에서 저장한 데이터 board, replyDatas를 그대로 들고 이동
JSP에서는 이런식으로 꺼내 사용을 할 것입니다
<%
BoardDTO board = (BoardDTO)request.getAttribute("board");
ArrayList<ReplyDTO> replyDatas = (ArrayList<ReplyDTO>)request.getAttribute("replyDatas");
%>
😋 ▶ setAttribute는 다음 JSP에서 사용할 데이터를 request에 담아 전달하는 기능
'JSP' 카테고리의 다른 글
| 🍍 JSTL | 리스너 | 에러페이지 설정 | 필터 Filter (0) | 2025.11.21 |
|---|---|
| requset | session | application | response (0) | 2025.11.20 |
| Controller의 useBean과 setProperty 그리고 request (0) | 2025.11.19 |
| 페이지 이동 방식 | 리다이렉트 (redirect) 포워드 (forward) (0) | 2025.11.18 |
| 이클립스 코드 JSP로 변경해보기 - 로그인 Controller 부분1 (0) | 2025.11.18 |