Я разрабатываю приложение с большим количеством DTO. Эти DTO используются в resultType MyBatis. В этом приложении так много SQL.
Каждый DTO имеет много (20–100) полей, потому что приложение выполняет чтение и запись в таблицы БД, разработанные в устаревших версиях. Мы не можем изменять дизайн таблиц (это выходит за рамки данной разработки).
Эти DTO используют @Getter, @Setter, @Tostring и @EqualsAndHashCode аннотации Lombok для сокращения шаблонного кода.
Проблема
Это приложение огромно и использует очень много метапространства. Из-за емкости ресурсов я хочу сократить использование метапространства. Согласно результатам исследования метапространства Java, эти DTO занимают более половины метапространства.
Согласно документу Ломбока, код, сгенерированный @Tostring и @EqualsAndHashCode< /code> аннотации будут масштабироваться в зависимости от количества полей.
Вопрос
Есть ли способ уменьшить раздувание метапространство с аннотациями Lombok @Tstring и @EqualsAndHashCode?
Справочная информация [list] [*]Я разрабатываю приложение с большим количеством DTO. Эти DTO используются в resultType MyBatis. В этом приложении так много SQL. [*]Каждый DTO имеет много (20–100) полей, потому что приложение выполняет чтение и запись в таблицы БД, разработанные в устаревших версиях. Мы не можем изменять дизайн таблиц (это выходит за рамки данной разработки). [*]Эти DTO используют @Getter, @Setter, @Tostring и @EqualsAndHashCode аннотации Lombok для сокращения шаблонного кода. [/list] Проблема [list] [*]Это приложение огромно и использует очень много метапространства. Из-за емкости ресурсов я хочу сократить использование метапространства. Согласно результатам исследования метапространства Java, эти DTO занимают более половины метапространства. [*]Согласно документу Ломбока, код, сгенерированный @Tostring и @EqualsAndHashCode< /code> аннотации будут масштабироваться в зависимости от количества полей. [/list] Вопрос Есть ли способ уменьшить раздувание метапространство с аннотациями Lombok @Tstring и @EqualsAndHashCode?
ошибка снимка экрана, введите описание изображения здесь
Lombok версии 1.18.32 совместим с Java 8, но при попытке использовать его с Java 17 возникают ошибки, несмотря на то, что он установлен в Eclipse.
Lombok 1.18.32 -> Он работает с Java 1.8, но...
Мой код написан на jdk8. Я использую собственный загрузчик классов для горячего обновления классов (назовем классы сценариев, они находятся в пакете com.xxx.project1.script), помеченных специальной аннотацией @Script. :...
Справочная информация
Разработанное нами приложение вызывает ошибку java.lang.OutOfMemoryError: Metaspace даже в среде -XX:MaxMetaspaceSize=512m. Это приложение состоит из множества jar-файлов, поэтому я предполагаю, что OutOfMemoryError вызван не...
Справочная информация
Разработанное нами приложение вызывает ошибку java.lang.OutOfMemoryError: Metaspace даже в среде -XX:MaxMetaspaceSize=512m. Это приложение состоит из множества jar-файлов, поэтому я предполагаю, что ошибка OutOfMemoryError...