문자열과 정수가있는 개체를 필드로 사용하며 문제없이 업데이트 할 수 있습니다. 난 그냥 고유 한 ID와 전화 setPersonalName ("마이크")와 올바른 필드를 찾으십시오; pm.makePersistent (Personal)로이 객체를 만듭니다. 그리고 끝났어!개체가 업데이트되지 않습니다
문제는 배열 필드에 있습니다. 의 개인이 과제를 가지고 있으며, 나는 이제 내가 ("보고서주세요", 3) Personal.setAssignment 호출 할 수 있도록 3 할당을 업데이트 할 가정 해 봅시다
@Persistent
private String[] Assignments;
이러한 저장한다고 가정 해 봅시다;
및 pm.makePersistent (개인); 이것은 어떻게 든 영구적으로 만들지 않으며 로그에는 오류가 없습니다 (단지 org.datanucleus.ObjectManagerImpl close : 데이터 저장소에 커밋되는 미해결 nonxx 업데이트)! 값이 객체에 있는지 여부를 확인했습니다. 값은 이미 개인용 오브젝트에 있습니다. 배열이 아닌 필드에는 문제가 없습니다. (처음부터이 객체를 추가 할 수있는 방법으로 만 업데이트가 작동하지 않습니다.) 어떤 생각에 대한
감사합니다, 여기
는 setAssignment 방법입니다 ... 하루 종일 연구했지만, 아무것도 찾을 수 없습니다 :public void setAssignment(int AssignmentNo, String Assignment) {
this.Assignments[AssignmentNo-1] = Assignment;
System.out.println(this.Assignments[AssignmentNo-1] + " " + AssignmentNo + " " + this.id);
}
대신 "전체"배열을 변경해야합니다.);'- 배열은 0부터 시작하므로'Personal.setAssignment (2, "보고서를 제공하십시오"); – Thomas
예 setAssignment() 함수에서이를 처리하고 있습니다. 1을 빼고 배열의 색인으로 사용합니다. – Genom