1. Создание шаблона Excel с помощью JXLS
2. Отдалённый сервис предоставляет источник данных
3. Промежуточный слой соединяет шаблон Excel и отдалённые данные

Основная идея архитектуры: разделение шаблона Excel и источника данных для повышения гибкости и расширяемости.

Ключевые технологии:
1. По данным конфигурации в базе данных (из таблицы `template_dataobject_library`) создаются объекты во время выполнения.
2. Из JSON-строки ответа берутся данные по ключам, указанным в конфигурации (из поля `data_response_key` таблицы `template_dataobject_catalog`).
3. Ключи данных в шаблоне Excel определяются конфигурацией в базе данных (поле `data_key` таблицы `template_dataobject_catalog`).
4. Адрес запроса к удалённому источнику данных определяется конфигурацией в базе данных (поле `remote_request_url` таблицы `template_dataobject_catalog`).
5. Используется версия `commons-jexl` 3.1 из `org.apache.commons:commons-jexl3:3.1`, которая требует изменения подхода к установке функций.
6. Услуги предоставляются как модульные компоненты, обеспечивающие высокую степень декомпозиции и расширяемости.


Структура базы данных:Таблица: template_dataobject_catalog (конфигурация запроса шаблона)
serialno                                -- уникальный номер
template_id                             -- ID шаблона
data_key                                -- ключ данных объекта в шаблоне Excel для заполнения данными
data_response_key                       -- ключ списка данных в ответе от удаленного источника
transfer_type                           -- тип преобразования данных: Bean; Map (в настоящее время реализован только Bean, создается динамически во время выполнения)
remote_request_url                      -- адрес запроса к удаленному источнику данных
remote_request_type                     -- тип запроса: GET, POST (в настоящее время реализован только POST)
create_time                             -- время создания записи
update_time                             -- время последнего обновления записиТаблица: template_dataobject_library
serialno                                -- уникальный номер
template_id                             -- ID шаблона
data_type                               -- тип данных: запрос; ответ
colKey                                  -- имя колонки
colKeyName                              -- описание колонки
keyClassType                            -- полное имя типа класса
sort                                    -- порядок сортировки (основан на входных данных, когда data_type равен request)
create_time                             -- время создания записи
update_time                             -- время последнего обновления записи