SpringBoot + JPA 방식으로 개발을 하고 있는 중인데
로그인 세션 시간을 늘려달라는 주문이 들어왔다.
구글링을 하던중에 application.properties 파일에
server.session.timeout=(설정시간) 이렇게 설정하면 된다는
글이 있었다. 시도해본 결과 세션타임 적용이 안되는 것이었다.
조금 더 검색을 해본결과 잘 되는 방법이 있어서 적어본다.
일단 Application.java 파일에
@Bean
public HttpSessionListener httpSessionListener(){
return new SessionListener();
}
소스를 추가해준다.
그리고 클래스를 하나만든다.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class SessionListener implements HttpSessionListener {
private Logger log = LoggerFactory.getLogger(this.getClass());
@Override
public void sessionCreated(HttpSessionEvent se) {
se.getSession().setMaxInactiveInterval(60*60); //세션만료60분
}
@Override
public void sessionDestroyed(HttpSessionEvent se) {
}
}
여기선 SessionListener 클래스를 만들었다. 클래스 명은 알아서 만들면되는것!!
이렇게 하고 톰캣을 리스타트 해줬더니 아주 잘 동작한다.
'IT' 카테고리의 다른 글
구글 어시스턴트 언어 습득중 연내 38개국 확대 17개 언어 추가 (0) | 2018.02.19 |
---|---|
iOS 기기장애 발생하는 텔루구어 유니코드 버그 발생 (0) | 2018.02.19 |
애플 iOS 11.3 선공개!! (0) | 2018.01.25 |
IOS 11.2.5 업데이트 배포 (0) | 2018.01.25 |
상점에 점원이 없다? 아마존고!! (0) | 2018.01.24 |