powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна идея по разбору файлов
14 сообщений из 14, страница 1 из 1
Нужна идея по разбору файлов
    #39185755
roma126
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго времени суток!
Нужна идея как лучше сделать следующее:
На сервер linux поступают xml файлы, содержимое которых нужно парсить и кидать в таблицы oracle. Как отслеживать поступление новых файлов, возможно есть у кого-нибудь нечто реализованное.
Заранее спасибо!
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39185767
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma126,
ты видишь проблему каждые n сек проверять папку на файлы?
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39185770
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma126На сервер linux поступают xml файлы
Баба маня в ведре приносит?
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39185780
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39185786
roma126
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Garrick, nio Это идея, спасибо!
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39185989
bl_beard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma126,

есть jnotify .
Конечно давно не обновлялась, но может вызовет интерес.

есть еще Apache Common IO File monitor
не пользовался, но может пригодится.
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186130
chabapok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma126,

Игрался я с ватчером этим. В качестве тренировки делал прожку для архивирования измененных бинарников.
Штука полезная, но есть там 1 крупный недостаток - если ты пишешь в директорию большой файл, то событие "что-то поменялось" приходит до того, как весь файл будет залит окончательно. Конечно, это событие приходит и после окончательной заливки. Но ты, получив событие ENTRY_MODIFY не знаешь категорию события. То ли файл уже записан весь, то ли еще пишется.

А раз ты этого не знаешь, нужен дополнительный механизм, который это решает. Ну вот в моем случае проверялось условие, что в течении заданного времени больше изменений файла не было. Тогда прожка считала, что изменений больше не будет - и делала копию директории.
И дальше вопрос - а какое время задавать? Если ты копируешь мелки файлы - то одно, а если ты заливаешь по ssh гигабайтовые файлы, да еще если сеть поганая, это время надо ставить больше.

вы можете пытаться парсить xml. Если парсится - все ок. Если не парсится, то или ошибка синтаксиса, или неполный xml.
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186135
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чаще всего подобные Jobs пишутся вообще без ватчеров.
Достаточно признака того что файл прогружен. И признака
того что он окончательно сформирован (последний тег закрыт).
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186148
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пишется файл, а следом его md5-хэш
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186170
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если упрощать, то достаточно после основного слать файл 0 байт. Т.к. в одном потоке все.
Принимающая просто читает список файлов в папке.
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186223
chabapok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.netпишется файл, а следом его md5-хэш

Для больших файлов md5 придется много раз пересчитывать. Это плохо. Частично решит проблему выбор такого алгоритма контрольной суммы, который позволяет "доскормить" новые данные в существующий калькулятор суммы. Только все равно криво это как-то.

Тогда уж как-то так: в имени файла содержится его длина. Если файл очень долго лежит и не меняется - значит при записи был обрыв, если длина больше заялвенной - то тоже подозрительно, а если длина стала равна заявленной, то можно пытаться парсить.
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186286
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю что развитие этой идей плавно перейдет в разработку своего rsync.
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39186288
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma126Всем доброго времени суток!
Нужна идея как лучше сделать следующее:
На сервер linux поступают xml файлы, содержимое которых нужно парсить и кидать в таблицы oracle. Как отслеживать поступление новых файлов, возможно есть у кого-нибудь нечто реализованное.
Заранее спасибо!

Spring Batch, Spring Integration
...
Рейтинг: 0 / 0
Нужна идея по разбору файлов
    #39187626
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chabapokДля больших файлов md5 придется много раз пересчитыватьзачем?

пишется файл test.txt
ожидается файл test.txt.md5
как только test.txt.md5 появился - пересчитали, сравнили и всё
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна идея по разбору файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]