1

クラスに次のコードがあります。処理すると、データベースの最新行にあるタグと同じ値を持つ xml が生成されます。オブジェクトを再初期化しようとしましたが、うまくいきません

while (tempResultSet.next()) {
        conList = new ContentList();    
        conChannel = new ContentChannel();
        conChannel.setType(String.valueOf(tempResultSet.getInt("Key")));

        pubDate.setStart(tempResultSet.getTimestamp("PUBLISHSTARTDATETIME").toString());



       conElement.setPubDate(pubDate);
        conElement.setConChannel(conChannel);



        conList.setConElement(conElement);
        newConList.add(conList);

        conList = null;
        conChannel = null;
        }
4

1 に答える 1

2

新品も必要ですconElement。ループ内で再利用/上書きされています。

現在、すべての新しい conListオブジェクトには同じオブジェクトのコピーがありconElementResultSet. 次のようなことをします

ContentElement conElement = new ContentElement();

conElement.setPubDate(pubDate); // won't overwrite dates
conElement.setConChannel(conChannel); // and channels now

conList.setConElement(conElement); // every list has its own copy of element
于 2013-06-11T07:16:07.677 に答える