package com.crawler.chart; import com.crawler.chart.impl.GenreDistributionChartGenerator; import com.crawler.chart.impl.RatingDistributionChartGenerator; import com.crawler.chart.impl.YearDistributionChartGenerator; import com.crawler.chart.impl.YearRatingChartGenerator; import com.crawler.model.Movie; import java.util.ArrayList; import java.util.List; public class ChartManager { private List chartGenerators; public ChartManager() { chartGenerators = new ArrayList<>(); } public void addChartGenerator(ChartGenerator generator) { chartGenerators.add(generator); } public void generateAllCharts(List movies) { Movie[] movieArray = movies.toArray(new Movie[0]); for (ChartGenerator generator : chartGenerators) { System.out.println("生成图表: " + generator.getChartName()); generator.generateChart(movieArray); } } }