Я поддерживаю старое веб-приложение J2EE и получаю жалобы на исправление его производительности.Проанализировав его архитектуру данных, я понял, что у программиста (ов) есть / есть хэш-наборы для хранения табличных значений, которые растут до тысяч строк.Учитывая то, что Java-API говорит о хэш-наборе, я действительно считаю, что это действительно очень плохая идея, особенно когда таблицы базы данных упорядочены по некоторым атрибутам, поэтому отсюда и снижение производительности, но мне нужно применить какое-то решениечтобы уменьшить этот удар по производительности, и хотя я думаю о нескольких вариантах, я хотел бы знать, могу ли я использовать какую-то другую структуру данных, которая требует меньше вычислений для хранения данных.Ниже приведен отрывок одного из классов, которые должны быть сопоставлены с базой данных.имейте в виду, что есть еще 12+ участников, включая то, что показано здесь:
/* Hibernate attribute mapping */
private Set<Supplier> suppliers = new HashSet<Supplier>();
private Set<Customer> customers = new HashSet<Customer>();
private Set<Tarif> tarif = new HashSet<Tarif>();
private Set<Contribution> contributions = new HashSet<Contribution>();
private Set<Premium> premiums = new HashSet<Premium>();
private Set<Alert> alerts = new HashSet<Alert>();
private Set<CustomerInvoice> customerInvoices = new HashSet<CustomerInvoice>();
private Set<Monitoring> monitorings = new HashSet<Monitoring>();
private Set<Criterions> criterions= new HashSet<Criterions>();
private Set<User> registeredUsers= new HashSet<User>();
private Set<Cost> costs= new HashSet<Cost>();