Java — выполнить командный файл, когда новый файл создается в определенной папке на Win 7

Позвольте мне сначала описать, где я нахожусь. Для удобства чтения это займет три абзаца.

Оригинальная проблема: Я работаю над сайтом php, одной из функций которого является чтение данных из файла Word, загружаемых пользователями, а затем вставка записи в какую-либо базу данных. Примечание: на сервере запущены окна (чертовы окна!).

Мое решение: Напишите java-программу для чтения файлов слов и вставки в базу данных с использованием библиотеки Apache POI java. Затем выполните программу Java в одном файле bat. Тогда возникает новая проблема …

Новая проблема: Как мы можем запустить конкретный bat-файл для определенного события файловой системы? В моем случае, событием будет создание файла в одной назначенной папке.

Жаль, что я сделал себя полностью понятым. Жду вашей помощи. Любое предложение приветствуется.

0

Решение

На твоем месте я бы реализовал какую-то запланированная задача(http://technet.microsoft.com/en-us/library/cc772785%28WS.10%29.aspx) на сервере, на котором запущено Java-приложение для добавления файлов. В зависимости от вашего трафика вы можете настроить его запуск каждые 5 минут, каждые 5 часов или что-то еще.

Это Java-приложение будет делать следующее:

  1. Посмотрите на этот каталог

  2. Если он видит какой-то файл (ы), загружает файл (ы) в базу данных

  3. Когда он завершит загрузку файлов, он удалит их из каталога (поэтому он не добавит их при следующем выполнении задачи).

В то же время, Я удивлен, что вы не реализуете что-то с помощью PHP через веб-приложение. Если ваш сайт уже находится в php, не имеет ли смысла сохранять логику приложения как часть PHP-вещей? Каждому свое.

Если вы пошли php route, супер простой подход будет следующим:

  • есть страница submit_doc.php с формой, где пользователи могут загрузить документ

  • когда они нажимают кнопку отправки, запускается другой файл php, скажем upload_doc.php

  • upload_doc.php будет обрабатывать подключение к БД и добавление файла в БД

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]