230313
어려웠던 점
작성 중인 게시글의 인덱스를 어떻게 알 수 있을까
작성한 글을 바로 받아 게시글 상세페이지로 이동시키는 것은 어렵지 않았으나 내가 원하는 것은 파라메터로 각 값을 받아 출력하는 것 이 아니라 ArrayList에 저장한 값을 바로 가져오는 것이 목표였다. 생성되지도 않은 인덱스를 어떻게 가져올까 하다가 set할 경우 마지막 인덱스에 추가됨을 이용하여 .size()메서드를 사용하여 인덱스를 확인했다.
내가 원하는 파라메터를 이동시키는 것
위와 이어지는 문제인데 인덱스를 구했는데 이걸 어떻게 다음 페이지로 보낼지가 막막했다. 한참을 파라메터로 고민 하다가 구한 인덱스 값을 리턴하여 파라메터로 이동시켰다. req.setAttribute를 그렇게 많이 썼으면서 왜 파라메터로 보낼때 생각이 안났는지 허무 했다.
기존 글 작성 후 바로 목록으로 들어 가는 것에서 해당글이 제대로 작성 되었는지 확인할 수 있도록 상세 작성 페이지로 이동 후 목록 버튼을 통해 게시글 목록으로 갈 수 있게 함
게시글을 수정 할 수 있도록 목록에서 수정 버튼, 게시글 상세페이지에서 수정 버튼을 각각 만들어 같은 수정 기능을 사용할 수 있게 함.
https://github.com/leemyunga/leema0927.git
public int write(String user_name, String subject, String content) {
BoardBean bean = new BoardBean();
bean.setUser_name(user_name);
bean.setSubject(subject);
bean.setContent(content);
list.add(bean);
int idx = list.size() - 1;
return idx;
}
// 수정 버튼 클릭시
public BoardBean update(String idx) {
BoardBean bean = new BoardBean();
bean = list.get(Integer.parseInt(idx));
return bean;
}
// 수정 완료 버튼 클릭 시
public BoardBean done(String idx, String subject, String content) {
BoardBean bean = new BoardBean();
bean = list.get(Integer.parseInt(idx));
bean.setSubject(subject);
bean.setContent(content);
list.set(Integer.parseInt(idx), bean);
return list.get(Integer.parseInt(idx));
}