//代码1publicclassCrawlUrlContainer{privateList>toCrawlList=newArrayList>();publicList>getToCrawlList(){returntoC...
//代码1
public class CrawlUrlContainer {
private List> toCrawlList = new ArrayList>();
public List> getToCrawlList() {
return toCrawlList;
}
public void setToCrawlList(List> toCrawlList) {
this.toCrawlList = toCrawlList;
}
public void addOneSite(Map url){
toCrawlList.add(url);
}
public void addListSite(List> urlList){
toCrawlList.addAll(urlList);
}
public void remove(Map url){
toCrawlList.remove(url);
crawledList.add(url.get("url").toString());
}
}
//代码2
public void startCrawler(List> siteList){
CrawlUrlContainer cuc = new CrawlUrlContainer();
cuc.setToCrawlList(siteList);
for(;thread>0;thread--){
new CrawlerThread(cuc).start();
}
}
在CrawlerThread中修改Container中的数据时,List中的值都会变成最后一次修改的值
展开