내 상황에 대한 해결책을 찾는 데 어려움이 있습니다. 죄송합니다. 이전에 대답이되었지만 나에게 효과가있는 것을 찾지 못했습니다.자바 캘린더 산술 문제
문제점 : 사용자 세션이 제한 시간보다 오래 동안 활성 상태인지 테스트하려고 시도했습니다.
세션 시작 시간과 현재 시스템 시간을 사용하여 빼고 결과가 시간 초과보다 큰 경우 var - 세션을 종료하십시오. 그래서
: 나는 분명히 activeTime.add 라인에 오류 메시지를 받고 있지만, 여기에 필요한 접근 방식이 확실하고
for (LogSession logSession : sessionLogList) {
Calendar sessionStartTime = logSession.getStartTime();
Calendar currentSysTime = Calendar.getInstance();
currentSysTime.setTime(currentSysTime.getTime());
Calendar activeTime = Calendar.getInstance();
activeTime.setTime(sessionStartTime.getTime());
activeTime.add(activeTime.getTime(), - currentSysTime.getTime());
if (activeTime.getTime() > timeoutLimit) {
// Do something
}
}
. 어떤 도움이라도 대단히 감사 할 것입니다.
제한 시간은 현재 15 분으로 설정되어 있지만 변경할 수있는 전역 변수입니다.
오류 메시지 란 무엇입니까? 또한 setTime 호출이 필요한 이유는 여기에 나와 있습니다. Calendar currentSysTime = Calendar.getInstance(); currentSysTime.setTime (currentSysTime.getTime()); –