Package com.easydesk.context
Class UserSessionContextHolder
java.lang.Object
com.easydesk.context.UserSessionContextHolder
요청을 처리하는 스레드 동안
UserSessionContext를 어디서든 꺼내 쓸 수 있게 해주는 ThreadLocal
홀더. Spring Security의 SecurityContextHolder와 같은 패턴이다.
반드시 WebSessionContextFilter 같은 곳에서 요청 시작 시
setContext, 요청 종료 시(finally) clear를 호출해야 한다. clear를 빼먹으면 Tomcat 워커 스레드가 재사용될
때 이전 요청의 값이 다음(전혀 다른 사용자의) 요청으로 새어나간다.-
Method Summary
Modifier and TypeMethodDescriptionstatic voidclear()Filter에서 요청 종료 시 반드시 호출하여 스레드 메모리 정리 (Memory Leak 방지)static UserSessionContext서비스, DAO, 유틸 등 어디서나 파라미터 없이 접근 가능static booleanstatic voidsetContext(UserSessionContext context) Filter에서 호출하여 현재 스레드에 세션 Context 바인딩
-
Method Details
-
setContext
Filter에서 호출하여 현재 스레드에 세션 Context 바인딩- Parameters:
context-
-
getContext
서비스, DAO, 유틸 등 어디서나 파라미터 없이 접근 가능- Returns:
-
isLoggedIn
public static boolean isLoggedIn() -
clear
public static void clear()Filter에서 요청 종료 시 반드시 호출하여 스레드 메모리 정리 (Memory Leak 방지)
-