SpController
@GetMapping("/t1")
// public String test1(HttpServletRequest request) {
public String test1(HttpSession session) {
//HttpSession session = request.getSession();
session.setAttribute("d1", "session1");
return "t1";
}
@GetMapping("/t2")
public String test2(HttpSession session) {
session.setAttribute("d1", "session2");
return "redirect:/final1";
}
@GetMapping("/t3")
public String test3(HttpSession session) {
session.setAttribute("d1", "session3");
return "forward:/final1";
}
@GetMapping("/final1")
// public String result1(HttpServletRequest request) {
public String result1(HttpSession session) {
String str = (String)session.getAttribute("d1"); System.out.println(str);
return "final1";
}
//출력 final1.jsp
${sessionScope.d1}
- HttpSession - 객체유지 된다
- HttpServletRequest - 객체유지 안된다
@GetMapping("/t4")
public String test4(HttpSession session) {
Data bean1 = new Data();
bean1.setD1("데이터1"); bean1.setD2("데이터2");
session.setAttribute("bb", bean1);
return "t4";
}
@GetMapping("/final4")
public String result4(@SessionAttribute("bb") Data bean1) {
System.out.println(bean1.getD1()+"/"+bean1.getD2());
return "final4";
}
/* public String test4(@SessionAttribute("bean1") DataBean bean1) {...} */
/* public String result4(HttpSession session) {
DataBean1 bean1 = (DataBean1)session.getAttribute("bean1"); } */
//출력 final4.jsp
${sessionScope.bb.d1 }
${sessionScope.bb.d2 }
- SessionAttributes
@SessionAttributes({"session1", "session2"})
public class SpController {
@ModelAttribute("session1")
public Data session1() {
return new Data();
}
@ModelAttribute("session2")
public Data session2() {
return new Data();
}
@GetMapping("/t5")
public String test5(@ModelAttribute("session1") Data session1,
@ModelAttribute("session2") Data session2) {
session1.setD1("aa"); session1.setD2("bb");
session2.setD1("cc"); session2.setD2("dd");
return "t5";
}
@GetMapping("/final5")
public String result5(@ModelAttribute("session1") Data session1,
@ModelAttribute("session2") Data session2) {
System.out.println(session1.getD1()+"/"+session1.getD2());
System.out.println(session2.getD1()+"/"+session2.getD2());
return "final5";
}
}
//출력 final5.jps
${sessionScope.session1.d1}
${sessionScope.session2.d1}
- @SessionAttributes → request 영역이 아니라 session 영역에 주입된다
- @ModelAttribute에 같은 이름으로 저장된 메서드가 자동 호출
728x90
728x90
'Spring' 카테고리의 다른 글
JUnit Test (0) | 2022.08.10 |
---|---|
properties - 유효성검사, 에러메시지출력 (0) | 2022.08.05 |
Spring MVC - @RequestMapping, @GetMapping (0) | 2022.08.04 |
myBatis를 이용한 DB연결, CRUD구현 (0) | 2022.08.02 |
JDBC 연결하기 (0) | 2022.08.02 |