1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mofum-mofum-msdom

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Проект mofum-msdom

Проект представляет собой инструмент для работы с документами Microsoft.

Этот класс инструментов основан на Apache POI 4.0 SAX и использует пользовательский режим. Он обеспечивает простоту использования, сохраняя при этом гибкость. Благодаря реализации на основе Sax, потребление памяти относительно невелико, что помогает избежать OutOfMemoryError (OOM).

Принцип чтения данных: данные считываются в режиме событий, где каждая операция чтения сопровождается освобождением одной строки данных. Весь процесс анализа занимает только память, необходимую для обработки одной строки данных.

Принцип записи данных: часть данных временно сохраняется в памяти, а затем записывается на жёсткий диск в соответствии с временным порядком. Этот процесс называется «кэшированием».

Часть Excel:

  • Цель проекта: простота, эффективность, свобода и лёгкость использования.
    • Простота: инструмент прост в использовании и не требует глубокого изучения.
    • Эффективность: нет необходимости беспокоиться о производительности или объёме данных, можно сосредоточиться на разработке бизнес-требований.
    • Свобода: гибкая конфигурация позволяет изменять практически любые аспекты инструмента. Мы предоставляем базовую конфигурацию, но также даём возможность полностью настроить её под свои потребности.
    • Лёгкость: мы хотим, чтобы использование mofum-msdom было приятным и лёгким.

Способ установки MAVEN:

<dependency>
    <groupId>com.mofum.msdom</groupId>
    <artifactId>mofum-msdom</artifactId>
    <version>1.0.2.3</version>
</dependency>

Версия 1.0.2.3: основные функции

  • В настоящее время поддерживается только импорт и экспорт файлов Excel версии XLSX (Excel 2007). Поддержка форматов CVS и XLS пока отсутствует.

  • Реализована проверка обязательных параметров.

  • Поддерживается фильтр данных (DataFilter).

  • Доступен настраиваемый валидатор (Validator).

  • Предусмотрен режим чтения файлов (File).

  • Доступна функция постраничного вывода (PageAnnotationExcelWriterImpl).

  • Имеется режим вывода с аннотациями (AnnotationExcelWriterImpl).

  • Существует режим смешанного вывода нескольких типов аннотаций (MultiAnnotationExcelWriterImpl).

  • Обеспечена поддержка преобразования типов Excel (ExcelConvert).

  • Поддержаны режимы добавления и смешанного вывода на нескольких листах.

  • Возможно объединение ячеек.

  • Предоставлено множество стилей.

  • Данные, выводимые на печать, могут быть отформатированы.

Предварительный обзор функций новой версии 1.0.3.0:

  • Будет поддерживаться режим потокового чтения.

  • Планируется поддержка шаблонов для экспорта и их обратной сериализации в объекты.

  • Будут добавлены настройки, связанные с шаблонами.

  • Появится возможность инициализировать стандартные конфигурации Excel, такие как DataFilter, Validator, ExcelConvert и TypeConvert. Эти конфигурации будут доступны глобально и могут быть настроены в соответствии с требованиями бизнеса. Также можно использовать существующие преобразователи по умолчанию и поля конфигурации. Они не конфликтуют друг с другом.

(«√» означает завершённую функцию, «-» указывает на то, что функция находится в разработке.)

Тестирование:

1. Тестирование Excel:

Тестовые примеры можно найти в каталоге com.mofum.msdom.excel.demo.

Чтение теста (ReadDemo):

JDK версия: 1.8

Операционная система: Windows 7

Конфигурация JVM: -Xms1m -Xmx5m

Данные тестирования: 100 000 строк данных (20 столбцов), см. вложение (sxxf1.xlsx)

Минимальная требуемая память JVM: 5M

Запись теста (WriteDemo):

Версия JDK: 1.8

Операционная система: Windows 7

Конфигурация JVM: -Xms1m -Xmx5m

Минимальная требуемая память JVM: 5M

Архитектура программного обеспечения:

Инструмент основан на POI 4.0 и предназначен для импорта и экспорта Excel.

Руководство по использованию:

  1. Чтение данных:

Пример кода для чтения тестовой модели:

 /**
  * Пример чтения тестовой модели
  */
public class ReadDemo {

    public static void main(String[] args) throws IOException {

        // Создаём Reader для анализа тестовой модели
        IExcelReader<TestModel, TestModelCallback> reader = new AnnotationExcelReaderImpl<TestModel, TestModelCallback>();

        // Используем POI для чтения файла Excel
        reader.read(new File("001.xlsx"), TestModel.class, new TestModelCallback());

    }

}

Подробные инструкции см. в WIKI-документации.

  1. Запись данных:

Пример кода для записи данных:

public class WriteDemo {

    public static void main(String[] args) throws IOException {

        // Настраиваем данные для записи
        IExcelWriter writer = new AnnotationExcelWriterImpl<TestModel>();

        // Записываем данные
        writer.dataType(TestModel.class).start(out).write(datas).end();

    }

}

Подробные инструкции см. в WIKI-документации.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Класс инструментов для работы с документами Microsoft. Операции с Excel выполняются в режиме SAX-событий, что позволяет быстро импортировать и экспортировать большие объёмы данных при минимальных затратах памяти. Это эффективно предотвращает проблемы с переполнением памяти (OutOfMemory), которые могут возникнуть при работе с большими объёмами да... Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mofum-mofum-msdom.git
git@api.gitlife.ru:oschina-mirror/mofum-mofum-msdom.git
oschina-mirror
mofum-mofum-msdom
mofum-mofum-msdom
master