세션 정보를 확인해볼 컨트롤러 추가
@Slf4j
@RestController
public class SessionInfoController {
@GetMapping("/session-info")
public String sessionInfo(HttpServletRequest request){
HttpSession session = request.getSession(false);
if(session ==null){
return "세션 없음";
}
session.getAttributeNames().asIterator()
.forEachRemaining(name -> log.info("session name={}, value={}",name,session.getAttribute(name)));
log.info("sessionId={}", session.getId());
log.info("maxInactiveInterval={}", session.getMaxInactiveInterval());
log.info("creationTime={}", new Date(session.getCreationTime()));
log.info("lastAccessedTime={}", new
Date(session.getLastAccessedTime()));
log.info("isNew={}", session.isNew());
return "세션 출력";
}
}
sessionId : 세션 ID ==> JsessionID 의값
maxInactiveInterval : 세션의 유효시간
createTime : 세션 생성일시
lastAccessedTime : 세션과 연결된 사용자가 최근에 서버에 접근한 시간
isNew : 새로 생성된 것인지 과거에 만들어진걸 요청해서 조회된 세션인지 여부 체크
application.yml파일 설정시
server:
servlet:
session:
timeout: 60