Added project

This commit is contained in:
2023-06-10 23:59:27 +03:00
parent 3ca712c8f6
commit fd63b81d22
8 changed files with 597 additions and 6 deletions

View File

@@ -1,6 +1,73 @@
# ExcelToJson
1. Утилита считывает поданный на вход xlsx-файл, путь к которому указывается в виде значения параметра при запуске утилиты.
2. Последовательно считываются строки и столбцы, создаётся объект с заданным набором полей и заносятся в список.
3. Список маршаллизуется и сохраняется в файл формата json. Файл имеет то же название, что и xlsx-документ и помещается в тот же
каталог.
1. Утилита считывает поданный на вход xlsx-файл, путь к которому указывается в виде значения параметра при запуске утилиты.
2. Последовательно считываются строки и столбцы, создаётся объект с заданным набором полей и заносятся в список.
3. Список маршаллизуется и сохраняется в файл формата json. Файл имеет то же название, что и xlsx-документ и помещается в тот же каталог.
**Примечания**
***Формат xlsx-документа***
Подаваемый на вход xlsx-документ состоит из одного листа (sheet) и имеет заданный набор столбцов, первая строка это заголовок столбцов, все последующие строки - значения столбцов. Значения в первом столбце заданы в числовом формате типа integer, значения остальных столбцов заданы в строковом формате.
Пример:
| id | field | value | value_map |
| ------ | ------ | ------ | ------ |
| int | string | string | string |
***Формат json***
```
{
"id": 1,
"field": "string",
"value": "string",
"value_map": "string"
}
```
**Расширенная опция**
В дополнении к основной функциональности так же есть возможность прямой записи содержимого xlsx-файл в виде структуры в mongo db.
Структура записи mongo db имеет вид
```
{
"id": 1,
"field": "string",
"value": "string",
"value_map": "string"
}
```
**Инструкция по использованию**
Для запуска консольной программы exceltojson.jar необходимо наличие jdk не ниже версии 8
Программа работает в двух режимах, экспорт в json (по умолчанию) и экспорт в mongo db (нужно задать ключ при запуске программы)
***Общее описание запуска программы (экспорт в json)***
`java -jar exceltojson.jar <полный_путь_к_файлуормата_xlsx>`
на выходе будет файл формата json, имеющий то же название что и входящий файл и будет располагаться в том же каталоге где и входящий файл
Общее описание запуска программы (экспорт в mongo db)
`java -jar exceltojson.jar --mongo=mongodb://<host>:<port>/<database>/<collection_name> <полный_путь_к_файлуормата_xlsx>`
***Примеры запуска***
****Экспорт в json****
`java -jar exceltojson.jar c:\myfolder\myfile.xlsx`
На выходе получим json `c:\myfolder\myfile.json`
****Экспорт в mongo db****
`java -jar exceltojson.jar --mongo=mongodb://mongo-01.testbanki.ru:27017/dict/dictMap c:\myfolder\myfile.xlsx`
Данные из myfile.xlsx экспортируются в mongo db в указанную коллекцию dictMap базы данных dict