영구 저장소 만들기
영구 저장소를 만들려면 하나 이상의 PersistentObject를 만듭니다. 각 PersistentObject는 long 형식의 고유 키가 있습니다.
영구 데이터 저장소 만들기
각 PersistentObject는 고유의 긴 키가 있습니다.
- 필요한 클래스와 인터페이스를 가져옵니다.
import net.rim.device.api.system.PersistentObject;
import net.rim.device.api.system.PersistentStore;
import java.lang.String;
import net.rim.device.api.ui.component.Dialog;
- 고유의 긴 키를 만들려면 BlackBerry Integrated Development Environment에 문자열 값을 입력합니다. 예: com.rim.samples.docs.userinfo
- 문자열을 마우스 오른쪽 버튼으로 클릭하고 Convert ‘com.rim.samples.docs.userinfo’ to long을 클릭합니다.
- 코드에는 고유의 긴 키를 생성하는 데 사용한 문자열을 나타내는 설명을 포함합니다.
- 영구 데이터 저장소를 만들려면 단일 정적 PersistentObject를 만들고 고유의 긴 키를 매개 변수로 사용하여 PersistentStore.getPersistentObject를 호출합니다.
static PersistentObject store;
static {
store = PersistentStore.getPersistentObject( 0xa1a569278238dad2L );
}
영구 데이터 저장
- 필요한 클래스와 인터페이스를 가져옵니다.
import net.rim.device.api.system.PersistentObject;
import net.rim.device.api.system.PersistentStore;
- PersistentObject에서 setContents()를 호출합니다. 이 메소드는 기존 콘텐츠를 새 콘텐츠로 교체합니다.
- 새 콘텐츠를 영구 저장소에 저장하려면 commit()을 호출합니다.
String[] userinfo = {username, password};
synchronized(store) {
store.setContents(userinfo);
store.commit();
}
- 일괄 트랜잭션을 사용하여 객체를 영구 저장소에 커밋하려면 PersistentStore.getSynchObject()를 호출합니다. 이 메소드는 객체를 잠그는 영구 저장소 모니터를 검색합니다.
- 객체를 동기화합니다.
- 필요에 따라 commit()을 호출합니다. 일괄 처리 시 커밋이 실패하면 전체 일괄 트랜잭션이 실패합니다.
- 일괄 트랜잭션과는 별개로 모니터 객체를 커밋하려면 모니터 객체를 동기화하는 동안 forceCommit()을 호출합니다.
일괄 트랜잭션에서 객체 저장
- 일괄 트랜잭션을 사용하여 객체를 영구 저장소에 커밋하려면 PersistentStore.getSynchObject()를 호출합니다. 이 메소드는 객체를 잠그는 영구 저장소 모니터를 검색합니다.
- 객체를 동기화합니다.
- 필요에 따라 commit()을 호출합니다. 일괄 처리 시 커밋이 실패하면 전체 일괄 트랜잭션이 실패합니다.
이 정보가 도움이 되었습니까? 의견을 보내 주십시오.