본문 바로가기
Spring Boot/Spring Boot 입문 홍팍

[Spring boot] (13) 링크와 리다이렉트

by 몰라닉네임 2023. 8. 7.

Mission
링크와 리다이렉트를 사용하여 페이지 간 이동을 연결하시오

Link 를 사용하면 편리한 요청이 for Request

Redirect 를 사용하면 편리한 응답 for Response 가능해진다.

2. 새글 작성 링크
/articles/index.mustache
<a href="/articles/new">New Article</a>
href는 요청을 보낼 Link 주소를 갖고 있다.  index 페이지에서 new페이지로 이동 링크

3.목록 돌아가기 링크 
/articles/new.mustache
<a href="/articles">Back</a> 
new 페이지에서 index 페이로 이동 링크

4.리다이렉트
새 글을 작성하면 아무런 페이지가 나오지 않는다. Redirect 기능이 없어서
 articles/1 v페이지가 나오면 좋겠다.
-Controller/ArticleController
return "redirect:/articles/" + saved.getId();
    }
-/entity/Article.java
@Getter 어노테이션 추가한다. 인스턴스 변수를 반환하기 위해 사용

5. 목록으로 돌아가기
-/templates/articles/show.mstache
<a href="/articles">Go to Article List</a>

{id} 값을 받은 상세 페이지에서 목록 페이지로 이동한다. 

 

-목록페이지에서 상세 페이지로 갈 때 

/articles/index.mustache
파일의 td 타이틀 부분에
<td><a href="/articles/{{id}}">{{title}}</a></td>
a태그 사용해서 링크를 걸어준다. 
{{#articleList}}
{{/articleList}}
이 사이에서 출력되니깐
{{id}} 해당되는 게시글 목록에 값을 링크에 자동으로 넣어준다.

 


  • 지난 시간 리뷰

 

  • Link 를 사용하면 편리한 요청이 for Request

<a>, <form>태그를 사용하여 작성할 수 있다.

  • Redirect 를 사용하면 편리한 응답 for Response 가능해진다.

Redirect 란 클라이언트에게 재요청을 지시하는 것이다. 

전화에 빗대어 표현하면 : 

-업무를 위해 A로 전화했는데

처리를 다 마치고 남은 부분은 B에서 담당하니깐 B로  연락해주시겠습까? 라고 응답받았다면

-B로 다시 전화를 걸겠지.

이런 경우가 redirect이다. 

 

클라이언트가 /articles/create -> 요청

서버가 redirect:/articles/{id} -> 응답

클라이언트가 /articles/{id} -> 요청

서버가 show 페이지로 -> 응답

 

🔥 구글링 훈련하기

  • HTML a 태그
  • HTTP Redirect란
  • @Getter

내용참고

https://www.youtube.com/channel/UCpW1MaTjw4X-2Y6MwAVptcQ

 

홍팍

클라우드스터딩 | CloudStudying | 온라인 코딩학습 | 프로그래밍 강의 채널 https://cloudstudying.kr

www.youtube.com