반복자를 사용하여 객체 목록을 탐색하고 있습니다.iterator.remove()는 데이터베이스에서 객체를 삭제합니다.
List<FormQuestion> questions = regMetadata.getFormQuestions();
Iterator<FormQuestion> iter = questions.iterator();
while (iter.hasNext()){
FormQuestion question = iter.next();
//if invalid question, delete from list
if(question.getModuleType().intValue() == -1) {
iter.remove();
}
}
iter.remove()
또한 DB에서 개체를 삭제하고 있습니다. 데이터베이스가 아닌이 목록 (질문)에서만 개체를 삭제할 수있는 방법이 있습니까? 나는 최대 절전 모드 & MySQL을 사용하고있다.
제공되는 작은 정보를 설명하기가 어렵지만, 만약 내가 OneToMany 관계에서 활성화 된 Cascading을 가지고 있고 엔티티가 분리되어 있지 않다는 것을 추측해야만한다면 말입니다. –
일반적으로 저장하려는 경우가 아니면 영구 클래스의 내용을 변경해서는 안됩니다. 별도의 개체 (어쩌면 별도의 클래스)를 만든 다음 필요한 데이터를 복사하십시오. –