public class ServersList {
private Host host;
private Server server;
private InfoList infoList;
private List<AbcInformation> abcInformation;
@XmlElement(name = "Host")
@JsonProperty("Host")
public Host getHost() {
return this.host;
}
//Get Set functions for all object
}
우리는 위 클래스를 가지고 있습니다. 위에 표시된 것처럼 다른 클래스의 일부 객체와 get/set 메소드를 포함합니다. 우리는 XML 파일을 파싱하고 ServersList 클래스의 배열을 생성합니다. 루프에 대한 serversArray 어레이의 모든 값이 동일하다 후 예를 들어,자바 객체 생성
ServersList[] serversArray = new ServersList[count];
for (int index = 0; index < count; index++) {
serversArray[index] = new ServersList();
serversArray[index].setInfoList(serConfig
.getInfoList());
serversArray[index].setHost(serConfig
.getHost());
serversArray[index].setServer(serConfig
.getServer());
serversArray[index].getHost().setCid(
listResponse.getHost().get(index).getCid());
serversArray[index].getHost().setCName(
listResponse.getHost().get(index).getCname());
serversArray[index].getHost()
.setCurrentName(listResponse.getHost().get(index)
.getCurrentName());
serversArray[index].getHost().setHostName(listResponse.getHost().
get(index).getName());
serversArray[index].getHost().setHostUuid(
listResponse.getHost().get(index).getId());
}
우리의 문제는 (XML에서 마지막 원소가 될 수있다)이다. 디버깅하는 동안 모든 반복마다 모든 행의 값이 현재 행의 값으로 변경된다는 것을 이해합니다. 이것을위한 해결책을 제시 할 수 있습니까?
그것을해야하지 다음 클래스에 대한 복사 생성자를 추가했습니다; ? –
새 개체를 모든 요소에 할당 할 때 결과는 동일합니다. – Ankit
'ServersList' 객체를 채울 코드를 게시해야합니다. – Azodious