BACK END/SPRING
[질문]session의 차이
dinoelll
2023. 4. 9. 23:12
@RequestMapping(value="/detail.go")
public String detail(@RequestParam String id,
HttpSession session) {
logger.info("detail id : "+id);
session.setAttribute("detailId", id);
return "detail";
}
@RequestMapping(value="/detail.ajax")
@ResponseBody
public HashMap<String, Object> detail(HttpSession session){
String detailId = (String) session.getAttribute("detailId");
logger.info("상세보기 할 아이디 : "+detailId);
HashMap<String, Object> map = service.detail(detailId);
logger.info("result : "+map);
if(map != null && map.size()>0) {
session.removeAttribute("detailId");
}
return map;
}
여기서 세션 사용한 이유가 페이지 이동에는 정보를 담을 수 없어서 라고 한 것 같은데,
그럼 질문이
Q.1 페이지 이동에 정보를 담을 수 없다는게 정확하게 무엇인지?
Q.2 그리고 세션은 옛날부터 썻었는데
@RequestMapping(value="/login.ajax")
@ResponseBody
public HashMap<String, Object> login(
@RequestParam String id,@RequestParam String pw,
HttpSession session){
logger.info(id+"/"+pw);
int success = service.login(id,pw);
logger.info("login success : "+success);
if(success == 1) {
session.setAttribute("loginId", id);
}
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("success", success);
return map;
}
이렇게 옛날 부터 세션은 로그인 검사 때부터 계속 썻었는데,
갑자기 detail에서만 정보 이동관련한 세션 이야기 하는 이유가 뭔지?