시뻘건 개발 도전기

#10 : redirect [필요하면 리다이렉트 시키자.] 본문

Framework/spring

#10 : redirect [필요하면 리다이렉트 시키자.]

시뻘건볼때기 2020. 5. 7. 21:13
반응형

  우리는 때때로 요청한 URL과 다른 결과가 나올 때가 종종있다. 접속할 URL을 치고 엔터를 땅! 치는 순간 URL이 바뀌면서 다른 페이지가 뜰 수 있게 설정할 수 있다는 것이다. 이것이 바로 리다이렉트(redirect) 기능이다. 특히 HTTP 통신에서는 서버의 응답으로 302 status가 발생했을 때, Location header 값으로 리다이렉트를 많이 사용하는데 지금 다룰 리데이렉트는 조금 다르다. 다음 코드를 보자.

 

@RequestMapping("/")
public String home(HttpServletRequest request) {
	String id = request.getParameter("id");
	if(null != id && id.equals("abc123")) {
		return "redirect:black";
	}
	
	return "white";
}

@RequestMapping("/black")
public ModelAndView black() {
	ModelAndView model = new ModelAndView();
	model.setViewName("black");
	return model;
}

@RequestMapping("/white")
public ModelAndView white() {
	ModelAndView model = new ModelAndView();
	model.setViewName("white");
	return model;
}

 

query로 들어온 데이터 중에 id 값이 "abc123"이면 ~/black 으로 리데이렉트시키고, 아니면 ~/white로 리다이렉트 시키고 있다. 리다이렉트가 실행되면 controller의 해당 메소드가 실행된다. 절대 바로 jsp를 띄워주지 않는다. 한 마디로 로직이 실행이 된다는 이야기다.

  큰 프로젝트를 진행하면 이 기능을 잘 써먹으면 좋을 듯 하다.

반응형

'Framework > spring' 카테고리의 다른 글

#12 : spring 관련 docs 및 API 참고 자료  (0) 2020.05.08
#11 : 서버의 필수 로직 [validation check]  (0) 2020.05.08
#9 : Client의 데이터 가져오기!  (0) 2020.05.06
#8 : Controller  (0) 2020.05.05
#7 : MVC (Model View Controlle  (0) 2020.05.04
Comments