[Spring] Redirect로 페이지 넘기기
- 웹/Spring
- 2020. 10. 26.
jsp에서 Redirect는 기본적으로 값을 넣지않고 페이지만 이동할때 사용 했지만 addAttribute를 사용하면 값도 넘길수 있습니다. 일단 Redirect 사용문법부터 보겠습니다.
Controller
@RequestMapping(value = "/studentConfirm", method = RequestMethod.GET)
public String studentRedirect(Model model,HttpServletRequest request) {
String id = request.getParameter("id");
model.addAttribute("id",id);
if(id.equals("abc")) {
return "redirect:studentOk";
}
return "redirect:studentNg";
}
id값을 getParameter를 통해 받아옵니다. id가 abc라면 studentOk.jsp를 띄울것이고, 그 외라면 studentNg를 띄울것입니다.
studentOk 에는 id값을 넣어주었습니다.
studentNg 에는 id값을 넣지 않았습니다.
jsp파일
studentOk.jsp
studentNg.jsp
결과확인
URL입력 (abc)
studentOk.jsp 이동 확인
id값 출력 확인
다른 값 입력
studentNg.jsp로 이동확인
이렇게 Redirect를 사용해서 페이지를 넘기고 addAttribute까지 사용해서 값도 넘겨보았습니다.
전체코드
Controller
package com.co.mvc05_04;
import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
import javax.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
/**
* Handles requests for the application home page.
*/
@Controller
public class HomeController {
//sendRedirect
@RequestMapping(value = "/studentConfirm", method = RequestMethod.GET)
public String studentRedirect(Model model,HttpServletRequest request) {
String id = request.getParameter("id");
model.addAttribute("id",id);
if(id.equals("abc")) {
return "redirect:studentOk";
}
return "redirect:studentNg";
}
@RequestMapping("/studentOk")
public String studentOk(Model model, HttpServletRequest request) {
String id = request.getParameter("id");
model.addAttribute("id",id);
System.out.println("id:"+ id );
return "student/studentOk";
}
@RequestMapping("/studentNg")
public String studentNg() {
return "student/studentNg";
}
}
Information
package com.co.mvc05_04;
public class Information {
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
studentOk.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
studentOk.jsp ${id}
</body>
</html>
studentNg.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
studentNg.jsp ${id}
</body>
</html>
'웹 > Spring' 카테고리의 다른 글
[Spring] JUnit4 단위 테스트 (0) | 2021.08.03 |
---|---|
[Spring] Log4j Cannot find DTD 에러 (0) | 2021.08.02 |
[Spring] 커맨드 객체 사용방법#2 (0) | 2020.10.26 |
[Spring] 커맨드객체 사용방법#1 (0) | 2020.10.26 |
[Spring] get/post방식으로 데이터 전송하기 (0) | 2020.10.26 |