pooney
article thumbnail

Redirect

서블릿의 요청이 클라이언트의 웹브라우저를 다시 거쳐 요청 되는 방식으로 dispatch의 forward와는 달리 url주소가 바뀐다.

 

Redirect 과정

클라이언트의 웹 브라우저에서 첫번째 서블릿을 요청 ->  첫 번째 서블릿은 sendRedirect() 메서드를 이용해 두 번째 서블릿을 웹 브라우저를 통해서 요청 -> 웹 브라우저는 sendRedirect() 메서드가 지정한 두번 쨰 서블릿을 다시 요청한다

 

 

 

 

 

 

dispatcher 방식 

 

controller 

@Controller
public class HomeController {
	
	//첫번째
	@RequestMapping(value = "first", method = RequestMethod.GET)
	public String first() {
		
		System.out.println("first");
		
		return "second";
	}
	
	//두번째
	@RequestMapping(value = "second", method = RequestMethod.GET)
	public String second() {
		System.out.println("second");
		return "second";
	}
    
 }

 

 

first 요청 화면 

 

url 변화 없이 second화면이 출력이 되며 콘솔창에 first만 출력되는 것을 확인 할 수 있다. 

 

 

 

first요청 화면

 

 

콘솔창 화면

 

 

 

 

 

 

Redirct 방식

 

controller 

 

@Controller
public class HomeController {
	
	//첫번째
	@RequestMapping(value = "first", method = RequestMethod.GET)
	public String first() {
		
		System.out.println("first");
		
		return "redirect:second";
	}
	
	//두번째
	@RequestMapping(value = "second", method = RequestMethod.GET)
	public String second() {
		System.out.println("second");
		return "second";
	}
	
	
	
  }

 

 

first 요청 화면 

 

url이 기존 first에서 second로 바뀌고 second화면이 출력이 되었다. 콘솔창을 보면 기존 first만 출력되었지만 second 까지 출력되는 것을 확인 할 수 있다. 

 

first요청화면
콘솔창화면

 

'Spring' 카테고리의 다른 글

Spring Interceptor에서 redirect 사용법  (0) 2020.05.02
Spring Interceptor에서 redirect 사용법  (2) 2020.05.02
Spring 포워드 방법  (0) 2020.05.01
Spring Interceptor  (0) 2020.05.01
Spring redirect 사용시 parameter 넘기기  (1) 2020.04.28
profile

pooney

@pooney

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!