Я новичок в Java и использую Java Eclipse, поэтому будьте добры! Надеюсь, я правильно задам этот вопрос, чтобы он имел смысл.
У меня есть четыре домена - каждый домен получает данные с четырех разных серверов, поэтому их необходимо разделять. Но теперь мне нужно создать отчет, который связывает все данные из четырех доменов в один отчет. Кто-то предложил использовать хеш-карты, которые я раньше не использовал. Каждый из четырех моих доменов имеет два поля, которые можно использовать в качестве ключа - CostCenter и Serial. Данные извлекаются с машин по всей стране. Мне нужны все данные для каждой машины в одном отчете.
Все это добавляется в существующий проект, который создает веб-страницу с вкладками, по которым пользователь может щелкать по различным таблицам и получать данные, относящиеся к определенному местоположению, или создавать отчет для каждой страницы для всех машин / местоположений. Мне просто нужно добавить новую ссылку, чтобы пользователь мог щелкнуть по ней, чтобы создать для них эту электронную таблицу.
Я уже создал домены (DAO, DAOImpl, DTO и т. Д.), А затем я собирался создать комбинированный отчет в моем файле MainService.java. Вот домены (списки), как объявлено в моем MainService:
public List<Volume> getVolumeReport();
public List<BadFmPumps> getBadFmPumpsReport();
public List<BadCorobPumps> getBadCorobPumpsReport();
public List<McService> getMcServiceReport();
А вот данные, извлекаемые из баз данных для каждого из них (доменов):
public class Volume {
private String costCenter;
private String DAD;
private String division;
private String model;
private String serial;
private String numDispensers;
private String colorantSys;
private String CCEGals2017;
private String BACGals2017;
private String CCEGals2018;
private String BACGals2018;
private String DNR2017;
private String DNR2018;
private String DNR2019;
public class BadFmPumps {
private String costCenter;
private String model;
private String serial;
private String badFmPumps;
private String over10;
private String under10;
public class BadCorobPumps {
private String costCenter;
private String model;
private String serial;
private String badPumpCount;
public class McService {
private String costCenter;
private String model;
private String serial;
private String crChargeTotals;
private String emgCalls;
Поэтому мне нужно объединить эти данные в одном отчете, где совпадает CostCenter + Serial. Как объявить хеш-карты для каждого объекта и как объявить ключ?
РЕДАКТИРОВАТЬ ----
Я думаю, что у меня есть что-то близкое с
public List<Volume> getVolumeReport();
Map<String, Volume> VolumeMap = new HashMap<String, Volume>();
for (Volume dispenser : VolumeList)
{
String volumeKey = new StringBuilder().append(Volume.getCostCenter()).append(Volume.getSerial()).toString();
VolumeMap.put(volumeKey, dispenser);
}
Это правильно? Я получаю одну синтаксическую ошибку - объявление карты
Map<String, Volume> VolumeMap = new HashMap<String, Volume>();
дает мне ошибку
Syntax error on token ";", { expected after this token
Что-то мне нужно там изменить?