다시 ArticleController 클래스에 와서 @GetMapping을 적어줍니다.
여기서 @GetMapping("/articles/{id}")의 {id}는 'id위치에 들어가는 것은 변하는 수'라는 의미가 됩니다.
수행될 메서드 show()라는 의미로 메서드를 만들어줍니다.
id값을 컨트롤러에서 받아와야 합니다.그러려면 id라는 파라미터로 받아 와야합니다.(Long타입입니다.)
id는 URL주소로 부터 입력되므로 @PathVariable를 적어줍니다.
잘 실행되는지 확인해 봅니다.println이아닌 공부했던logging을 사용합니다!
articles/1000 을 입력합니다.
Optional<Article> articleEntity= articleRepository.findById(id);
로 해줘야 해줍니다. 다른 방법으로는
Article articleEntity = articleRepository.findById(id).orElse(null);
👉이 뜻은 id값을 통해서 찾았는데 만약 해당 id값이 없다면 null을 반환해라 라는의미입니다.
model.addAttribute("article" , articleEntity);
return "articles/show";
<table class="table">
<thead>
<tr>
<th scope="col">ID</th>
<th scope="col">TITLE</th>
<th scope="col">CONTENT</th>
</tr>
</thead>
<tbody>
<tr>
<th>1</th>
<td>제목111</td>
<td>내용111</td>
</tr>
</tbody>
</table>
마음에 드는 것을 가져온 후에 show.mustache에 넣습니다.
재시작해서 브라우저에 들어가보면 추가했던 테이블이 나옵니다.
모델에서 article이란 이름으로 artticleEntity라는 이름을 등록했습니다.
이것은 view페이지 show.mustache에서 쓸수 있습니다.
-