2012-02-23 2 views

답변

12

세션 데이터가 쿠키로 저장되므로 재생 2.0에 더 이상 세션 ID가 없습니다. 사실 식별 토큰이 필요 없으며 세션 데이터가 모든 요청과 함께 전달되어 서버를 완전히 상태 비 저장합니다.

그러나 글로벌 캐시에 사용자 데이터를 저장해야하는 경우에도 ID가 필요할 수 있습니다. 이를 위해 은

// Generate a unique id 
String uuid=session("uuid"); 
if(uuid==null) { 
    uuid=java.util.UUID.randomUUID().toString(); 
    session("uuid", uuid); 
} 

세션 ID 아래의 코드를 사용할 수 있습니까? 어쨌든 Java EE로 들립니다 ...

+0

글로벌 캐시에서 개체의 수명주기를 어떻게 제어합니까? TTL 및 기타 만료 매개 변수를 구성합니까? –

+0

수명주기는 캐시 구현에 따라 다릅니다. 나는 EHCache가 WeakReferences를 사용한다는 것을 기억하면, JVM이 메모리를 필요로 할 때 삭제되는 세부 사항을 모른다. EHCache는 캐싱을위한 최고의 API 중 하나이며, 만료 설정을 지원한다고 확신합니다. –

+0

하지만 Play 2.0에서 근본적으로 다른 점은 무엇입니까? 세션 (일반적으로)은 특정 수명주기가있는 상점입니다. "상태 문제"는 구현 세부 사항으로 인해 발생합니다. –