이번에는 하나의 레코드만 가지고 와서 보여주는 레코드 상세 보기 작업을 해볼 것이다.
getGuestbookList.jsp 파일에서 이름을 누르면 getGuestbook.do로 이동할 수 있도록 링크를 걸어주었다.
이때 내가 선택한 레코드가 어떤 것인지를 알려주어야 하기 때문에 기존에 primary key로 잡아둔 guestbook_idx를 함께 넘겨준다.
넘겨준 guestbook_idx의 레코드를 "guestbook"이라는 이름으로 model에 담아주고, guestboook 폴더의 getGuestbook.jsp 파일로 값을 가지고 넘어간다.
사실 받을 것은 guestbook_idx 하나뿐이기 때문에 매개변수의 타입을 int로 받아도 되지만 통일성을 위해 앞으로도 모두 vo로 받아서 처리를 해줄 것이다.
GuestbookService.java 파일에 getGuestbook을 추가해 주고,
GuestbookServiceImpl.java 파일도 추가해 주고,
GuestbookDao.java 파일에도 추가해 준다.
guestbook-mapper.xml 파일에 하나의 레코드만 가지고 올 수 있는 쿼리문도 추가해 준다.

그러면 상세 보기를 할 수 있도록 guestbook 폴더에 getGuestbook.jsp 파일을 생성한 뒤, guestbook이라는 이름으로 담겨있는 vo의 값을 찍어주자.
순수 JDBC를 할 때보다 스프링부트를 하면서 많이 편리해졌다고 느끼는 가장 큰 점이 jsp 파일에서 따로 값을 받을 필요가 없다는 것이 아닐까.
이전에는 컨트롤러에서 set 해놓은 것을 jsp 파일에서 get 해서 써야 했는데, 이제는 컨트롤러에서 add 한 것을 jsp 파일에서는 get 하는 것 없이 사용할 수 있으니, 처음에는 '이게 왜 되지?' 하는 순간이 있었을 정도니 말이다.
아무튼 이렇게 jsp파일을 만들고 레코드의 이름을 클릭하면, 클릭한 레코드의 상세 보기를 볼 수 있다.
물론 상세 보기만 할 거라면 굳이 form을 만들고, 하나하나 input에 넣어서 name을 줄 필요가 없지만, 이후에 update를 하기 위해 미리 name을 추가해 준 것이다.
name을 다 주기는 했지만, 번호는 수정이 아닌 어떤 레코드를 수정할 건지를 알려주기 위함이고, 이름과 날짜는 수정할 것은 아니지만 우선 그냥 넣어두었다.
하여 수정을 원하지 않는 input에는 readonly를 넣어 수정할 수 없도록 해주었다.
그러면 다음에는 메모를 수정할 수 있는 update를 진행해 보자.
'Springboot' 카테고리의 다른 글
Springboot CRUD게시판 - delete (0) | 2024.03.07 |
---|---|
Springboot CRUD게시판 - update (2) | 2024.03.01 |
Springboot CRUD게시판 - insert (0) | 2024.02.24 |
Springboot CRUD게시판 - select (0) | 2024.02.20 |
Springboot 기본 설정(pom.xml - jsp, servlet, jstl / controller) (0) | 2024.02.13 |